Iowa used to have more leagues... in the fad days. Guess what? People stopped playing, other leagues closed. This often sours locations that would host a league now on the idea: they got burned once, why risk it again? There used to be two in Ames, but the second one was never overly strong and eventually they didn't have anyone to run it. This is another large problem: finding someone competetant to run league. I used help run the one that closed, but I just had to devote more time to class work at the same time another guy moved, another guy quit, etc.
The thing is, Ames is located well (arguably better than Des Moines is) for central Iowa. So even though it's one town, it's "servicing" a large portion of the state. Of those who go to Ames for League, many (such as yours truly) are traveling from another town/area. So thats fewer people to attend a similarly distant league in an area outside of Central Iowa.
Additionally, Des Moines is close enough to Ames that if you want to go to league and have a car (or parent with a car) it's only a 45-60 minute drive.
Finally, the store that sponsor league in Ames also has a Des Moines location, so all of our events are well known to players there.