A while ago we pulled support for IP geolocation, due to the service being slow. I have beenlooking into reliable alternatives and have failed, but am totally open to suggestions! Latest idea is to try one of the ip address databases, which claim to be relatively accurate. However, since a user can create an account and save a location to auto-center on, I haven't tried to hard. I'll have to update the wording around the site to steer people towards account creation so that location is saved to a profile.
I'd suggest you hook into a browser API to do this. I believe google maps already do this via a "my location" button, which can estimate, at worst case, to the city usually. Also, changing the default and saving it per login would be good, ala google maps too.