Я обнаружил, что если вы вызываете карту как функцию, а не как var, и применяете scaleControl в соответствии с предложением, то вся карта не отображается. Все еще работаем над решением, которое решает эту часть проблемы.
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 15.5, lng: 121},
zoom: 10
});