This is a pretty old thread with pretty old answers, so I thought a more recent answer might help some people.
I have a lot of experience using both Heroku and Engine Yard for some fairly large and complex web services. My company uses the Engine Jard to launch the Andromo App Maker for Android, and we use Heroku to launch the AirBop Push Messaging Service for Android. Each platform has its own unique features.
Your question is a little difficult to answer simply because most of the criteria that interest you are not distinguishing features of each platform. In any case, I will answer these questions, but I will also touch on the general philosophy of each platform and the differences in technical support, which, in my opinion, are more useful in your decision.
Security, stability, and scalability are a wash. Both services are as reliable and stable as any Amazon EC2 instance. Scalability is also realistic. While Heroku limits you to a few hundred small ones (512 thousand copies) (or now "double" small size), Engine Yard will allow you to use Extra Large with a bunch of processor and memory, but in the real world it's all about the same in the end. With Heroku, you may need to create a swarm of cheap small servers to handle your cargo, or with Engine Yard you will use several more expensive large servers. For web requests this probably doesn't matter.
Price is a factor that I can decide a little better. First of all, if you just mess around, Heroku is free. Just do not confuse that with meaning you can really run a real website at your own free level. You can not. Engine Yard gives you the chance to play with them for free, but let me talk about real-world applications. Heroku smoothes prices by charging for "dynos" (those small web servers I mentioned) and the PostgreSQL database plan. Their prices include storage, backup, bandwidth, etc., so it’s quite easy to make a mental calculation of what it costs. Engine Yard breaks the situation, and you will need to use your calculator to figure out what it will cost, but all this is presented to you before you decide to launch a new "instance".
I find that Heroku's database plans are very expensive (compared to the fact that they use an EC2 instance). They definitely make up their profit here. What looked cheap for the speakers now needs a database for $ 200-400 / month (to start getting a level of reasonable performance, you can look more like $ 800 +). I also hate the way they hide / obscure the database specifications - you will need to make a conclusion about the possibilities by going to the Amazon instance size data and looking at the "memory" that Heroku uses for the "cache".
An Engine Jard database is just any server instance you want. They are tied to the same EC2 markup as for web instances. There is no gouging. It is more transparent.
Is one cheaper than the other? Maybe, but I would not allow a few dollars to muddle your decision.
After all, I like Motor Yard for its bare metal. We need this for Andromo, since we generate and compile Android applications on the fly and have some very specific requirements. Engine Yard gives us full control over each server, Unix, SSH packages, etc. On the other hand, Herkou works very well in situations where you can abstract your application from hardware and enter into this swarm of dinosaur thinking. They do this very quickly and easily, to launch dozens in a couple of minutes. As I mentioned, we launch AirBop on the Heroku platform and automate the creation / destruction of instances using HireFire - which works very well for us, as our workload varies greatly and unexpectedly.
Another thing to consider is technical support. In my experience, Heroku's free support / support is next to useless, while Engine Yard is very good. EY, used to charge basic support, but began to include that with all their plans (plus they have a priority opportunity 24/7). I found that they really know what they are talking about.
Hope this helps!