”Akachan” is ”baby.” The meaning of it has not far from born and depending mother. If he walk stable or talk, or you talk with one who thinks he is not a baby, you cannot use it.
On the other hand, you can use ”musuko” even if he is a baby. But, ”-chan” is not suited. If you talk about other’s son or daughter, you can use ”musuko-san” or ”musume-san, ” or simply ”oko-san.”