I knew that the answer was "That is a dog" or "It is a dog" but I tried "He is a dog" . I was marked wrong.
Me too, but since वह can mean he, she, it and that it can be quite confusing. Context is the key word.
You're absolutely right. You might use this Hindi sentence against a person you're trying to insult and it would naturally mean - He's a dog. Happens a lot in my college. :D