We've continually raised the price on our product as we grow and add features. It was nerve wracking at first, but now are confident enough in our product that we feel good standing behind our pricing.
We are targeting larger, more stable customers, and have historically found the ones that say our pricing is too expensive are the ones that require much more support and maintenance. Have no issue seeing them go to cheaper competitors - while our target clients don't bat an eye at our pricing (which is still probably too low for that segment).
There are various reasons, but here are a few of the big ones:
1. Getting ahead of your costs before they start to shoot up as you grow. Check out this pricing calculator for an idea of what I mean: http://containership.io/#pricing
2. Cloud portability: Heroku runs in 2 AWS regions (us-east-1, eu-west-1). What happens if you want to host in a specific country, a completely different provider (maybe you have some free credits?) or even your own data center eventually? Not gonna happen with heroku.
3. More flexibility to run the types of databases, queues, or other open source software that isn't possible to run on Heroku.