I think I figured it out tonight. With 20ish players on the map you need an over representation of core classes. Soldiers, medics, engies, demo, and maybe pyro. What you don't need is 1 soldier, 1 engie, 1 medic, 1 heavy, 1 demo, 3 snipers, and 2 spies.
I left 4 of the EGO servers tonight because the game was so unbalanced due to players playing whatever class they wanted to instead of trying to pick a class based on what the team needed. If there are 15 players on a team, sure play sniper. But when it's low numbers (as it has been the last few weeks) pick something else. You aren't good enough to carry the team when 2 ubers come busting down on the intel door.
I think EGO should turn the auto-balance off. It doesn't help that much. What should happen though, is if a team wins let's say 6 matches in a row, then the server auto-scrambles the team. It's getting ridiculous.