Try http://www.hostip.info it is reasonable accurate in most cases and
hell it is for free. It depends what you need it for of course but it is
far better than nothing.
The problem with this one is that they are still gathering data and they
depend on user input, but it looks pretty accurate to what I have found
out.
The problem with their "user input" is that the result they return is
typically the ISP NOC location (in my case 200 miles south of me, about
halfway across the country).