In English, "Why is she dating him?" can be negative or not, depending on tone-of-voice. "What is she dating him for?" is negative - it's actually a rhetorical question (a self-answering question, or one which does not require an answer because the answer is obvious) or just a negative statement put in question form.
It may be not a dates but ordinary meetings, like friends or formal relationships. In this case "зачем" is perfectly fit, meaning "for what purpose" (почему will mean "for what reason", "why"). If it's about relationships, all variants are allowed (including "для чего") and all have slightly negative background, like "why she's dating him?"
I disagree. "Why does she date him?" is equivalent to "Why is she dating him?" Both imply on-going action in a kind of present sense, because, in order to "date" someone, you have to go out with that person socially on more than one occasion - more than one date.
That's really what the question asks: "Why does she periodically meet him for social engagements of a more personal nature?" or "Why has she been meeting him for social engagements and why does she continue to do so?"
Certainly, dating someone involves repeated actions, but you don't say "I'm dating her tonight", you say "I'm going on a date with her tonight". I'd argue that "she's dating him" isn't referring so much to the specific action of meeting him for social engagements as to the continuous fact of being in a romantic relationship with him.