$20/mo for SSL is crazy.
They make no money on this arrangement, they are simply passing the ELB costs on to you.
So Heroku leverages the ELBs to circumvent the 1 IP address per EC2 instance issue.
EDIT: more info here http://serverfault.com/questions/285680/what-is-the-technolo...
The downsides of not being on EC2 these days are many. You wouldn't be able to offer the fleet of bonus services that Heroku can offer.