Does anybody know why Mädchen (girl in German) is not considered female?
Nope, that is not right! Grammatical gender has everything to do with biological gender for people as much as for animals, not always for professions, though. Mädchen is the diminutive of Maid, die Maid, which is an old fashion word for Mädchen and which is not used in German for a girl. By adding - chen the article changes into das but every male living creature has the article "der" and every female living creature has the article "die". You might wonder why "das Kind" or "das Baby" is neuter, or why "der Säugling" has the male article, that's because they are superordinated word of a word family, "der Säugling" can be either "der Junge" or "das Mädchen".
Mädchen is modern High German and comes from the early modern High German Mägdchen and Mägdchen comes from the middle High German Magd and Magd comes from the old High German Magad and Magad comes from the Germanic word Magaþi wich means virgin.
By the way the modern High German word Junge goes back to the Germanic word Knab wich was the name of a "spanking stick".
it is so in some other languages too... I always understood it the way that it is a girl = kid... and kid is neuter too, since you don't care so much if it's a girl or a boy when it's a little kid... Also historically... boy would be considered more important... whereas der Junge.. while a girl was "just a kid" == neuter (I am a girl by the way and am not bothered by this :-)