Translation:The little boys have kept quiet for an hour.
The little boys have stayed quiet for an hour - should that be accepted?
Isn't it strange to use the passé composé with depuis? Normally we are told to use the present tense in French even though we use the present perfect in English. Is there a distinction in meaning?
It depends upon how you look at the sentence. If "have kept quiet" is considered an "event" that happened at a fixed point in time in the past → passé composé. If the "have kept quiet" is a process or a continued state of being → present.
It is very common to use the present tense in French with depuis, whereas in English you'd use the present perfect. However, this is a sentence where either present or passé composé will work.
I frequently confuse se taire and tuer, especially given that the past tense of se taire includes "tu", which of course resembles tuer. I guess if one committed suicide, it would be se tuer, so the similarity would be even greater.