First-off, are you planning to run Rails on a single EC2 instance? While possible, that's not really where EC2 shines, and you can get a simpler and cheaper setup on a VPS such as Slicehost, Linode, or Webbynode. EC2 is great for clustered setups with dedicated databases, multiple Rails servers, load balancers, etc., particularly if you need to be able to quickly scale up or down. But at that point, a single preconfigured AMI isn't going to do much good.
Having said that: Some time last year I used EC2 on Rails. It's decent, but not very flexible. It also uses mongrel_cluster instead of Passenger. Apparently there's a way to set up a cluster, but frankly at that point there are probably better alternatives.
I've heard great things about Rubber as a way to provision and deploy a Rails app on an EC2 cluster. It seems very flexible, yet fairly easy to get started with, and should scale nicely from single to multiple instances.
For more complex setups, I would probably be tempted to look at Chef as well, but I don't have any first-hand experience with it.
PoolParty, which sits on top of Chef, also seems worth a look.