Fast people flock to fast races. Those races are fast because there is probably some decent prize money at the top.
If there's no prize money, no one fast is going to go there.
One example, Houston half marathon. Something like 25 people broke 64 minutes there this year, half or more of them were Americans. Not many other races in America where more than 5 people run under 64 minutes. And I'd guess the prize money (roughly $20k-$25k for the win?) at Houston half marathon is more than any of the other half marathons in the United States. If you throw money at it, the top fast people will show up, and then the next tier of fast people will show up to run with those super fast people. It might take a few years for the ball to really get rolling though, so some of these races that throw a bunch of money at it one year, and it's an okay turnout but not what they're expecting, they can't just stop throwing the money at it if they want it to become a big-time race.
Just for fun, let's say a race currently has no one under 40 minutes for a 10k. No one capable of running 36 minutes is going to show up because they'd be running by themselves. Now say we throw in $1k for the win, $500 for second, $250 for 3rd. We're at $3500 of total prize money. If you're charging something like $30 an entry, you need 120 men or women to show up for the opportunity to race against the fast people that come to make that prize money. They might not all show up that first year, but after a couple years and people start hearing about these fast times coming out of this 'so and so 10k', people will start coming to that race and some of these people will have other family members or friends running that race as well. And it's all because they threw some money at the race.