fix bug at lower zoom levels, where the canvas is not correctly places due to map.getBounds() being clamped at -180 and 180
fix another bug, where CanvasLayer.topLeft would clamp left longitude to -180, reflecting underlying map.getBounds() implementation