Since "ein Baby" is not a word indigenous to the German language, but comes from English, which is of French origin, I think it may be used slightly differently. (Just as un enfant in French means a child, while in English we tend to think of an infant as being a baby or at most a toddler.) Often a language adopts a word of associated though not always identical meaning from another language to fill a gap in its own, and maybe that's what's happened here.
Well, we call a child a baby until it's about one year old, after that it's a "Kleinkind" (toddler). I think that's quite similar to the english meaning of "baby".