your whole approach seems to be geared towards making them produce something for your team. you want them to compete for you and if they play ball and do indoor/outdoor track for you, you will let them run x-country. the team comes first, and the coach decides who gets to run on the team. in this philosophy, the athletes serve the needs of the team.
whereas, in my opinion, the coach should be helping the athletes to achieve their goals. to run in races they need a team, so you create a team for that purpose. the team exists solely to provide the athletes with a competitive opportunity, and when sufficient of them do well, the team does well. in this philosophy, the team serves the needs of the athletes.
I took over a club that suffered from exactly this problem, and had suffered to the point that five athletes turned up for matches and tried to cover all the events between them because other athletes had left due to being pressured to compet in events they had not trained for. a guy doesn't spend all winter learning how to throw the discus so that he can turn up at matches and "do the triple jump, for a point." you are not in that position, but that's where that philosophy is headed. it puts the team ahead of the individual and uses the athlete as a pawn in service to the team.
I changed the philosophy, and made it known that no one would be asked to do an event they didn't want to do. I made the team a servant of the athletes, and in four seasons we were promoted three times and won division 1 of the league.
my advice, then, as iowafarmer said, is to make practice a place they want to be. track practice has to be something that gives them what they want, rather than something that gives you what you want. you can't twist their arm into running indoor races if they want to run x-country. they will just go somewhere else. in my view, any policy that says "you have to compete in x if you want to do y" will fail, right out of the box.
if a kid wants to come to practice and train, and only wants to run x-country, then you should encourage that, not punish him by making him run indoor races as well. Alain Mimoun won three olympic silver medals, was winner of and runner-up in the world x-country championship, and seven times French x-country champion and he never ran an indoor race in his life.
cheers.