It's probably like asking why do babies and toddlers walk and talk at different ages.

My 3 year old has very good speech and has been clear, speaking in sentences and able to hold a conversation for about a year. But her little 3 year old friend has only just gotten the hang of two-word sentences and is not very clear at all (and it's certainly nothing to do with his intellect, he can name most of the letters of the alphabet!).

All kids move on to different stages when they're ready. If Mum is around when they want a bf I guess they're more likely to keep it up for longer. My DD is a stickler for routine and has had only 2 bfs a day for nearly 2 years now. You'd think that when I dropped her back she'd have gradually cut out some herself, but in her case her personality is such that it hasn't worked that way.

The WHO says that most toddlers/children self-wean between the ages of 2 and 5. That's a pretty big difference, but it explains why there are some little ones who don't self-wean for twice the age of others!