Despite all the caveats, I'm fairly sure that a iphone-like phone/GPS device with superior battery life will eventually supplant Garmins. Might take a long while, but when they get the power issues figured out, it'll be a Garmin beater. Garmin will have to make major advanced on wireless and cellular technology to keep up, which is far less likely than the wireless guys making battery advances.
The GPS and software issue is moot - it can be done already, and in fact, I'll bet the 'app developing' environment of the phones will allow for faster and better innovation that the Garmin stuff.
That said, I really love Garmin units and don't think they'll be going away anytime soon.