I posted this long ago on another forum, but here’s how I’d fix A Canterlot Wedding.
Alrighty, if we’re going to have to make it so that Cadence is the one that saves the day, let’s do it like so: The Mane Six reach the castle, get the elements (which means no surprise attack that suddenly makes the fight before seem pointless), then rush back to fight Chrysalis. However, much like the fight with Celestia, both parties get into a beam o’ war, with Chrysalis ultimately being the victor. Not because “the power of love was very strong!”, but because the bonds between the Mane Six weakened when the group ditched Twilight for the false Princess. I wouldn’t go as far as make it part of Chrysalis’ master plan because it seems she hadn’t planned anything past “take over Canterlot” if her reaction in beating Celestia is anything to prove. As Chrysalis gloats, Twilight weakly frees Cadence, she unbrainwashes Shining Armor, and then Chrysalis gloats on how everyone abandoned Twilight in her hour of need. Then cue Shining Armor beating her up, saying that it will never happen again and apologizes to Twilight. The others take turns to apologize to her, and soon, the Elements begin to glow, being restored to their power now that the bonds are truly reformed. However, despite Shining Armor now out of Chrysalis’ control, she still harnesses the love she absorbed from him and is still a powerful threat on ground. That is when Shining Armor gets the idea to knock her into the air with his shields, but he is unable to do it in the state he’s in. Cue the whole “my love will help you” and they create the shield. Then the girls use the EoH to enhance the shields and vaporize Chrysalis and her Changelings.
The ending proceeds normally, including that stupid as hell “Did I miss anything?” moment (though I could probably change that so that when the Mane Six arrive, both Luna and Spike get defeated by Chrysalis), though a change is that Celestia doesn’t delivered any half-assed moral, since the moral was said by Shining Armor. The wedding proceeds as normally.