The reason it is not accepted is that it is a short form, and veg could be vegetable or vegetarian. Also, it would be an informal way of saying the word, and I guess that Duo just wants us to learn the proper formal way.
Except that the abbreviation "non-veg" is much more common in Indian English than the full word. I think both are fine.
I'm pretty sure that माँसाहारी was spelled मांसाहारी (with anuswar instead of chandrabindu), right?
I really Duolingo needs a better bots for hindi. You can always hire hindi speakers.