Ngrams clearly show that "what is taking you so long" is probably your best bet for the situation at the moment of speaking.
(I had to shorten the phrase because ngrams can't be more than 5 words. I presume that the results for "takes you so long" mainly pertain to situation when it regularly takes someone too long to do something (which is the default use of Present Simple), e. g., "I'd love to have you help me, but it usually takes you so long."
So when you are speaking about a specific situation that is in progress right now, you should use Present Continuous: "what's taking you so long".
But your sentence
Why do girls take so long to get ready?
implies that it usually, regularly takes them too long. Present Simple is the correct tense to use in this situation.
Regarding "what" vs "why", I'd say they are more or less interchangeable when we are speaking in the moment. In the "girls usually take longer" example, the specific reason (what) can be very different (can't find the dress; messed up her makeup and has to re-do it; grabbed a bag and its handle broke, so she had to fix the handle; etc. etc. etc.).
"What" usually implies that you are asking for a specific reason. So it would be more often used "in the moment". "Why" usually invites philosophizing about some general trends in someone's speed of preparation. That is why, semantically, in your example about girls (where Present Simple is used), "why" is a better choice.
In your first two sentences, both "why" and "what" could be appropriate (with "why" being sort of a "You always take so long, and you are now taking too long, too, WHY OH WHY?" question; and "what" asking about a specific reason), but you need to use Present Continuous.