"Why aren't children at school?"
Translation:Почему дети не в школе?
"Почему" is "why" in the sense of "What's the reason?".
"Зачем" is "why" in the sense of "For what purpose?", and as such, is better translated to English as "What for?". (And I don't think you can use "what for" in the original sentence.)
Except the sentence is about the children who are not at school - re-read the original sentence.
The sentence "зачем дети не в школе" does not make sense. You cannot ask "зачем" with negation, only "почему", "отчего", or "по какой причине".
I am afraid you are barking the wrong tree: I am not a moderator nor do I have any input into what translations are deemed acceptable. I simply explained the difference between the two words. If you feel your translation should be accepted - report it using the appropriate button.
That said, I personally would not accept it - you are still describing a possible reason, not a purpose of the children's absence. Just replace "because" by "for the purpose of" in your own sentence -- it would sound nonsensical, wouldn't it? That's exactly how using "зачем" sounds in Russian.