Have you tried the RiverMote plugin?
I actually just bought that for my iPhone. I like it, but there is one huge issue with it (that I've been meaning to bring up with the developer here)... In order to use it, you need to launch MC via the RiverMote server application. This doesn't work for me very well at all.
I want to be able to put the RiverMote server application in my system startup folder, so that it is just always running on the system in the system tray. However, I can't keep MC running all the time (first of all, running MC and BeyondTV at the same time interferes with each other due to my remote control setup and there are other reasons I don't want it running all the time). I really need to be able to have the RiverMote application running all the time though, and when I launch MC, have it just "connect" to it then. As it is, you MUST launch MC via RiverMote, and the RiverMote server won't run unless MC is also launched. This doesn't work for me at all, really.
It'd be even better if we could set an option that if the RiverMote server is running, and detects that we've launched RiverMote on our iPod/iPhone, that it automatically opens up MC for you (though this might annoy some people and had better be optional).
If that change was possible, then RiverMote plus AirMouse would be the perfect Remote Control for any HTPC.