The problem is that iPhone doesn't have downloadable maps, so that when you find yourself outside of 3G coverage on at&t ( which is fairly often i know) you are out of luck. The maps wont load and you will loose your position. I tried that option before but I think the best option is still to get a dedicated gps. Also there are option with Android phones, since google maps offers voice guidance for free and with Nokia phones they also offer Ovi maps (Navtaq) for free (best cellphone navigation in my opinion) but you will run into problems because all phones have a small gps chip and relay heavily on A-Gps.
my small two cents.