I think the "exit" cost for people who have sunk tens to hundreds into apps will keep a lot of current Apple phone customers "locked in" - even if the ROI is very good, people have a hard time walking away from a sunk cost even if they should.
Still, they don't own rights to natural resources, gigantic pipelines, etc. Technology companies drop their ball from time to time, and it will only take a little mis-step for Apple to come back to reality. So many people do not have smart phones, and the wireless carriers are retarding their adoption here in the US through ridiculously high data prices and low caps. If we had Europe's pricing and carrier availability here, I think the penetration rate of the iPhone would be ludicrously high at this point. Luckily for MS and Google, it has been slow(er) going.
Which is why I totally appreciate the point about the mainframe mentality. Even if there is a good business case to switch, the "why fix what isn't broken" argument, especially in mission critical environments can be all but impossible to over come except for situations where there are big outages that have the top people screaming "change something so I can say we fixed it!" or when you have a situation like the sinking Itanium when you have to consider changing to a different platform for your main applications. Thank you for pointing that out, I under estimate it time and time again.
It's kind of funny in that we have a relatively large System i install base for our software even when it scales very well on x86, and due to the ease of development on x86 (vms!) it is far from our primary development platform. I think that customers don't like spending 5-10M on software and installation and then $50-100k on hardware.