Actually, the programmatic ability to spawn EC2 hosts is great in-the-small, for testing - you want to do an upgrade right? Spin up a fresh instance (or five), do your chef/puppet scripted deploy, load balance five percent of your users to the new one... watch for problems, don't see any? crank up the knob... once you're 100% on the new one, hold on to your rollback option for a bit, once you are confident in the new one - poof turn off the old one. Depending on how often you do releases, you can have an awesome safety net for maybe 10% more than your baseline instance cost... get a new developer? "here, run this script, now you have your own copy of the product to screw around with - when you get something working, push your changes"... basically there's a lot more value to that automation than just autoscaling.
That sounds useful. But you could do the same thing in a VM (or seven) on your desktop. It might be useful in some circumstances, but it's certainly not a requirement to deploy a working product. No one would choose to be locked in to a vendor because of that alone.