It might be more costly, but once you factor in the total cost of an outage... there is no comparison.
So far... reddit has been down for about 8 hours.
So, lets do some rough maths... based on a $500 man company, who moves their services to the magical cloud.
So... your cloud solution shits itself and dies... so you now have about 500 people sitting around twiddling their thumbs.
Say the average pay across the company is $30/hr
so 500 x 30$/hr x 8 hrs = $120,000
That 8 hr outage has just cost you $120, 000 in productivity, not to mention the loss in reputation to your customers etc.
Now, I will BET that the guys who write the contracts for cloud hosting have various "all care, no responsibly" clauses written into the contract, which means you can't recoup any of that loss.
Say this sort of outage happens, 5 times in a year..
That's about $6 million pissed away because you don't control your servers or devices.
Now add all the risk factors surrounding security of your data.
Not to mention there is no way of independently verifying that your cloud providers are doing what they say they are.. or that their data center is not staffed with inbred, lead poisoned, brain damaged monkeys.
I stand by my earlier statement. Companies who trust the cloud, get everything they deserve.