Fixed the zooming bug by updating my properties prior to calling the subscribed events. Also limited the amount that you can zoom out.