Might I suggest "herogit"? You can keep doing "heroku <command>" like normal – it just treats different branches as different apps, which I quite like. They put it in the last newsletter.
For example, I have a "staging" branch for my staging app and use the "master" branch for production. When I checkout the staging branch, the heroku gem switches everything to the staging app. Checkout the master branch and it switches to my production app.
(A little gotcha: I have to use "git push <repo> staging:master" to deploy the staging branch)
I've never tried the Katana gem, though, so I have no idea if it's better or worse.