I've done 3 playthroughs so far, cause I thought I lost my 1st save file (which I didn't and still have) and I lost my 2nd (for real)
1st playthrough (stopped after Noel)
I had real trouble against Shade. His Gengar was so fast that I had to set up 2 DDs with Gyarados to outspeed it and his Chandelure (always sent that after Rotom fainted) wouldn't let me set up 2. I won by sheer luck, when he sent out Golett instead of Chandelure, for some reason. I also had trouble against Noel, mostly because of his Cinccino KOing things it wasn't supposed to, by flinching them to death.
2nd playthrough (lost file after Charlotte)
Luna gave me hell, even though I had Scrafty, probably cause I was kinda underleveled (57-58lvl). I grinded my mons a bit and gave Gardevoir Moonblast to beat her.
Charlotte completely annihilated me on my first attempt, but then I just taught my Crobat Rain Dance and she became easy mode.
3rd playthrough:
Was prepared for everyone (too much actually) and, to my disappointment, some were even nerfed, like Shelly, Radomus and Serra. Doubles make it easier to deal with G.Gardevoir and Heather, because you can gang up on them. I only lost to Serra, cause I always battled her before field effects were introduced. So, I figured I'd have to battle her in an Icy Field, in doubles, with a permanent Ice Body/Snow Cloak crap and trained a Flygon just to remove the field with EQ. So, I lead of with that, and I was really surprised to see no special field, a singles battle and a freakin' Cloyster that swept me (so much for preparation :[ ). I won the rematch though. My point is, that Reborn isn't fit to be played by having "your team" with which you can beat everyone (like most other pokemon games). It's not even supposed to be that way. One must use different mons to match the situation. And in that spirit, all gym leaders are beatable or can give you hell, depending on what your team is when you battle them.