I think all capitals need a reason to exist. I think that most of the races start near IF and Stormwind. So that's a reason why Stormwind is usually filled. Ironforge is more filled than Exodar. Blizzard would have to force other players to travel to other cities or at least give better incentive. I think its more of player choice to subside in stormwind... even though it does have more incentive to be there as well. (Cata portals, Mists portals, the start of the next expansion quests... etc.)
Really Blizzard should just give equal distribution of all portals and quests in these cities and then give a unique flair and incentive to each.