Lots of reasons why. The very special players are just born with it, but still have to work hard to reach the top level.
Coaching at every level, diet, attitude, drugs and alcohol all play a part. As well as luck. I've played with and seen players that have had the ability from a young age to make it to the top level but their lives have been derailed by starting to go out and get p*shed or worse the night before training and games, as soon as that starts you are going no where. I have also seen other players that just got overlooked due to where they are from or what size they are or what team they currently play at. It can be a very elitist sport sometimes. Just because you play for some poor schemes amateurs doesn't mean you can't be better than people at the very stupid pro youth levels, junior or top amateur teams.
Overall at our own top level, I feel we are so far behind because of coaching mostly. There is very few offensive, creative coaches out there. Most teams I see from amateur, to boys clubs to the top level is more concerned with damage limitation. Coaching problems won't be causes 1 or 2 world class players coming through but it certainly effect our teams, as a whole system, being useless are controlling a game and being able to confidently play with the ball in tight areas.