There is a really funny glitch in the slow version of the audio for this sentence. The TTS actually reads out the hyphen at the beginning of the sentence, so it says:
"Punct și virgulă poftă bună Ana mersi."
It is also confusing because a "punct și virgulă" is a semicolon, not a hyphen, so perhaps it is a double glitch.
You're right, it should be accepted, especially because "bon appetit" is borrowed from French. If you wanted a direct translation, you would have to put in "Good appetite!" But we don't say that in English. Although "Have a good meal!" conveys the same idea, I guess they're looking for a translation of the phrase, as opposed to the meaning. I don't agree with it, but it's up to the creators of the course to make the lessons the way they want to, I suppose.
The direct translation, yes, but is it used colloquially? Not really, "Enjoy your meal" is the phrase used for "Bon appetit. In Spanish it would be, "Buen provecho." Culture is included in translations, kinds of expressions used respectively in each language, slang words, etc. (Feedback is appreciated)