Если вы все сделали как в Настройки макета и указали код MegaPost_GeoIp::getCountryLocationCity(), то при первом заходе в сессию (ASMP_City) посетителя сохраняется вся информацию по его местоположению для дальнейшего расчета доставок, при любом изменении города сессия перезаписывается
Если вы хотите подставить свой город, то можно сделать следующее, после вызова MegaPost_GeoIp::getCountryLocationCity(), разместите следующий код
if(!isset($_SESSION['ASMP_City'])){ $oShop_Country_Location_City =Core_Entity::factory('Shop_Country_Location_City',123); // где 123 - ID города $_SESSION['ASMP_City'] =MegaPost_GeoIp::makeCity($oShop_Country_Location_City);}MegaPost_GeoIp::getCountryLocationCity();