Zooming in or out jumps the map to a different position. This is especially bad when attempting to zoom in at the bottom of the map, and especially when using the mouse-wheel to zoom. When a user zooms in and out with the mouse wheel the zoom should stay centered on the mouse position. It looks like you have a conflict between scroll position handlers. It's the type of bug that is difficult to solve. If this code was on GitHub I would probably write a PR to fix it.