Not sure if it's still an issue, but we used to have a nightmarish time with Beanstalk where deployments would hang and we'd have no choice but to deploy a second instance of our app, flip DNS over, etc. I seem to recall it was some CloudFormation thing under the hood. Never had that kinda pain in my brief time with Heroku.
Heroku (and its open source cousin Cloud Foundry) just have the right abstraction level and very easy to use tooling.