So I downloaded the freeware GeoIP database in csv format and put together a little app:
http://sandbox.jeremymorgan.com/geo/location.php
Type in your actual city, and we'll see how accurate it is. I'm testing the accuracy of this database, and see if it's usable.
In exchange, I'll share my findings/code to GFY members, in case you want to implement this on your site.
You can view the results here:
http://sandbox.jeremymorgan.com/geo/location.php?mode=show