I agree that "the dog" should be accepted, because we haven't been taught this yet. So far we have been told that word order is pretty flexible in Finnish. But if I understand from a comment made by a mod (Christian I think his name was) the word order (syntax) is what tells us which English article to use.
In Finnish, you put things that you have already been talking about in the beginning of the sentence, and that would correspond to "the" in English.
So, "Kuka on kiltti koira" is "Who is a good dog," whereas if you want to say "Who is the good dog," you would ask, "Kuka kiltti koira on." That is, putting the dog right at the beginning, and the verb afterwards.
Please take this with a grain of salt though, as I am just a learner here too! :)
Actually, "the good dog" should totally be accepted. "Kuka kiltti koira on" is the word order for a subclause, not a real question. I don't think we have a good way to make this distinction. Even "Kuka on se kiltti koira?" sounds fairly artificial. Maybe you could say "Kukas se on kiltti koira?" but that's way too advanced for this lesson.
If you feel like talking to a dog, you might equally ask him, "who is the good dog," or "who is a good dog." It's the word order in Finnish that tells us that this person is asking the dog if he is a good dog. =D
I hope a mod jumps in here, because I'm just a learner too and not 100% sure.
You can most certainly use it. E.g. "Sinä olet aina niin kiltti" would translate to "You are always so kind", and I could well imagine saying this to a person of any age. But context does matter, so you've got it right that "kiltti" can relatively easily start sounding condescending.
I think Kuka kiltti koira on? would be used when kiltti koira is something already known, that is, it would correspond to Who is the good dog?. The answer to that question could be for instance Kiltti koira on Musti. (The good dog is Musti.). The answer to Kuka on killti koira? could be Musti on kiltti koira. (Musti is a good dog.).