I honestly don't know why you insist to use Moonlight over something that's actually useful like Reflect on Cresselia.
Also, I don't know why you reject HP Grass so adamantly when HP Ice is just as useless in your circumstance. Without HP Ice, you still have two very reliable dragon revenge killers, and did I mention THE best dragon counter in the game? I would actually use HP electric, since Gyarados does wall and can sweep a good chunk of your team, whereas Swampert isn't much a threat to be honest (though CBpert actually really screws you up, so if you prefer HP Grass then go that route). I really don't see the point of HP Ice on everything. You know with Garchomp gone you'd think that would actually decrease, correct? HP Ice is rather pointless so you might as well change it >_>
Also SubPunch Gengar is a HUGE weakness. It can set up a sub on a lot of your team and Focus Punch is easily beating Mamoswine, Heatran, and Lucario. Shadow Ball will just as easily take out Gengar and Cresselia while Gar can sleep Heracross or severely dent it with Shadow Ball.
It's not like Gengar is just going to stay in to get revenge killed after you sacrifice something like Machamp. It can switch out and set up on you again, only you will kind of run out of sacrifices with Substitute and everything. It's actually one of your bigger weaknesses. Don't take it lightly.