Может хотя бы кто-нибудь подскажет как отловить событие масштабирования. Тогда можно там попробовать my_icon.draw(); может это поможет
Вот кстати ссылка на подобную проблему.
Может парень лучше там объяснил:
http://osgeo-org.1560.n6.nabble.com/Markers-move-around-when-zooming-td4977035.html