Yes, sort of. You can enter coords into the map application and it will drop a push-pin icon onto that spot, and while it's tracking you it will show your location as a pulsing blue dot.
Close-in map resolution isn't great though, and I haven't yet seen a shipping app that can really give good caching functionality. Posimotion might have what a cacher wants, but I haven't played with their apps yet.
http://www.posimotion.com/
I tried some urban micro caches with my iPhone today. It isn't very efficient. Even with 3G, I had to wait a bit for info to come up on the Geocaching.com page, then I'd type the cache coords into the map program to have it locate the cache with a "pin". As previously mentioned, it does accurately locate the pin, and you can see your position (the blue ball) move right up to the pin - but without knowing X feet to cache and the accuracy of the GPS (i.e. accurate within 10' or whatever), it was hard to tell if I was right on the correct location or not. Certainly, a traditional cache may have been easier to find (than a micro). I found 1 of 3 that I searched for. Muggles made a through search of one area difficult. I wish I had my Garmin 60csx along to compare the accuracy...
As for durability, I saw heavy duty cases - even water proof - on a website. Search under OtterBox Armor iPhone cases.
I am hoping a good native app comes out soon for Geocaching with the iPhone. I don't expect it to replace my Garmin, but I would like it to replace my Palm (using Cachemate) now. I contacted the iGeoCacher developer - he hopes to have his new native app out in about one month. I looked at Posimotion's apps--they don't seem very useful for caching. But maybe I am missing something.
Then, if only I could bluetooth Cache coords from the iPhone to the Garmin, I'd really be set.