I coach middle and high school XC. I see a lot of kids like you describe: not fat, mildly to moderately active. Even with all of that equal, there is a HUGE variability in raw running ability. The first week of middle school practice we turn the kids loose on a trail, with two options - an out and back that is about 3mi, or an out-loop-back that is about 5mi. Rolling hills but nothing extreme.
Even though none of these kids run much or at all over the summer, the range of ability is staggering. Some of them finish the 5mi loop faster than others doing 3mi. I run with them on occasion. Even early in the season, some kids can easily run 8:00 pace and carry on conversation. Others are huffing and puffing for breath even at 9:00 or 10:00 pace. Again to reiterate, all of these kids look essentially the same! Skinny white kids who do soccer or hockey or whatever during the summer.
Some of these kids have the potential to be a great runner and others will never break 18:00 for 5k no matter how much mileage they run. Their bodies just aren't ready for it.
That being said, for high school kids with no major injury issues who can run under 19:00 in his first season of training as a freshman or sophomore, this is the kind of progression I look for:
Sub-19: 40-50 mpw
sub-18: 50-55 mpw
sub-17: 60-70 mpw
sub-16: 70-95mpw*
Most kids run out of time before they achieve sub-16. If they run in college they pretty much always break sixteen on the track. Some run into injury problems around 60 mpw and so we can't just shove more mileage their way. Some just don't have the aerobic engine to get into the 16s for whatever reason - they respond to training, but not enough I suppose. Once in a while you get a kid who rockets to sub-16 off 45 miles a week.
There's no reason to assume training response isn't a normal distribution. For every kid that runs 16:00 off 45 mpw, there is probably one kid who can't run 18:00 on 90 mpw. Call it "untalent" - Rare, yes, but just as rare as talent.