Why do you have no apples?
Should definitely be accepted.
Think of the Phrase "Leave no stone unturned". Meaning be thorough.
The phase theoretically should be “Do not leave any stone unturned”. This is perfectly acceptable grammatically and is theoretically more technically correct. But sounds strange to a native speaker because that is not the idiom.
There are no more trains coming, until morning. (sounds better than to me than) There are not any more trains coming, until morning.
As others have said this is very common way of speaking in certain areas of the UK.
The choice over the usage is therefore down to the writer. Both ways are correct translations.
Warum haben sie keine Äpfel translates to why don't they have apples. On contrary, warum haben Sie keine Äpfel translates to why don't you have apples. Among the answers if Sie is confused with sie and Ihnen is confused with ihnen, then the whole practice, under the formal Sie, is useless.