I see what you mean about the map extent not updating in the web form. There is currently a bug logged with the developers for the map extent in the web form not updating when the geopoint is updated with a calculation. In the meantime one approach you could try to get around the initial map showing at 0,0 would be to add “string-length(${res_address})>0” to the geopoint’s relevant column so the map doesn’t appear or populate until an address is entered. This isn't a perfect solution but could be a possible workaround until the bug is resolved.
I wasn’t able to access your custom locator to test it, but if you are able see the dropdown menu of suggested locations while using your custom locator, you may want to check to make sure that the property names that your custom locator returns for the x and y coordinates are consistent with the ones used in the geopoint calculation.
Thanks,
-Barbara