The dog seems to be ill would sound more natural to me.
Can "doente" mean hurt and/or injured as well?
That would be machucado C:
Why is puppy not correct here?
It is. In PT-PT cachorro means only puppy. I guess PT-BR uses it for "dog" as well.
We don't really have a special word for puppy - we usually call it a little dog = cachorrinho. Filhote can also be used (but then you have to specify if it's a filhote de gato or filhote de cachorro etc) C: