Just migrated an ecommerce consulting client from a major VPS provider in the US to AWS.
There's two main reasons. One is that the traffic to this client is heavily driven by ad spend, and the site fell on it's face hard this past year any time a big spike got sent our way by a single or combination of ad vendors (which we can't really control in fine enough detail) -- facebook, by the way, is by far the worst about this. They can and will cause a thundering herd.
The second reason is that there's a bunch of scale up/down to services in AWS if you're doing it right. You're not buying a .16xlarge server in AWS to host your ecommerce site, that would be stupid, you don't need that 24x7. You're paying for a pair of .xlarge servers at a Reserved Instance rate, which is half the published rate. When you need to, your instance count (and your aws bill) goes up.
We couldn't do that at the VPS host we were on, so we kicked them to the curb. With AWS, we can handle the load spikes -AND- the total lower bill for a year came out much lower.