It's unclear what you are trying to do here.
If you are simply trying to display a Locator over a GeoGraphics object, you can do so like this:
LocatorPane[{0, 0}, GeoGraphics["World"]]
If you need the Locator position to be tied to a Dynamic variable, I would suggest something like this:
Manipulate[{LocatorPane[x, GeoGraphics["World"]], x},
{{x, {0, 0}}, Locator}]
Or alternatively:
DynamicModule[{x = {0, 0}},
{LocatorPane[Dynamic[x], GeoGraphics["World"]], Dynamic[x]}
]
If you're just trying to dynamically update the location on the map, and you don't particularly need the Locator to be there at all, you might be able to use DynamicGeoGraphics, depending on your needs:
DynamicGeoGraphics[GeoPosition[Reverse[{-63., 45}]]]
If you are trying to have the Locator select the location on the map, I would recommend something akin to what many real-time strategy games do, with two maps: one containing the region from which you'd like to sample locations, and one containing the Locator, and the entire region from which you might like to sample. Something like this (where padding is expressed in degrees):
DynamicModule[{x = {-63., 45}, range = Quantity[10, "Kilometers"]},
Column@{LocatorPane[Dynamic[x], GeoGraphics["World"]],
Dynamic[GeoGraphics[GeoPosition[Reverse[x]],
GeoRange -> range], SynchronousUpdating -> False]}
]
You'll notice that anytime I ask for the GeoPosition of x, I Reverse x first. This is because Locator coordinates are {x,y}, whereas GeoPosition coordinates are {lat,lon}. For north-oriented equirectangular maps, the coordinates are reversed.
I hope this helps!