Could it be warmth? Cats prefer to sleep in warm places. Maybe your body heat is an attraction. This might explain why cats sleep on their owner's heads. Most of the heat escapes from our heads.
Comfort is a possible reason. Cats seem to understand when someone is ill or in pain. Therefore, they want to be close to their owner if they sense they are sick or in pain.
In the end, cats can and do bond with their favorite human. Perhaps it is love and companionship that brings your kitty to sleep on you.