I gotta say, I've tried several "Cloud" services and I am not impressed when it comes to TCO. While it's nice to have on demand provisioning, the performance of the virtual server instances are generally very poor compared to basic dedicated servers that are similarly priced.
Don't believe me.... run a simple sysbench and test the cpu and file io on EC2 (or your favorite cloud service) and compare it to a hosted dedicated box. In general on a similarly priced and spec-ed VM/machine you are going to find orders of magnitude better performance on the dedicated box, and that performance equals money saved.
In addition, many dedicated hosts now have 2 or 4 hour provisioning times - so if you don't need more boxes instantly, it's not as if you need to wait that long.
So yes, in the end, cloud services can be convenient.... but you certainly pay for that convenience. They are great for testing and development, but long-term hosting.... eh.... most companies would be better off if they stopped drinking the kool-aid and looked at other options.