Differences in Cloud Offerings
Stephen Booth (few posts before this one), has it right when he says "Different companies have different cloud offerings targeting different use cases."
Two of the most important differentiators for cloud computing service providers are their services offered and their architecture. They are big reasons for you to chose one over another. You select a service based on your needs.
With these two differences, application portability can hardly be avoided. If you want to migrate from Google to Amazon, or Amazon to Microsoft (Windows Azure), you'll have some porting work to do. (Note: "porting work" is not the same as "vendor lock-in.") The same happens if you decide to move your application from Windows to Linux.
I mostly agree with "sunny seattle" except his user name is misleading - at least with the rain we've had today :-).
(I am contracted by M80, working with Microsoft to promote Windows Azure)