Costa Maya is a wonderful port for doing snorkeling, however, I do not recommend bringing the baby with you. We did ours through the ship and we were taken on a nice catamaran out to the reef. If you're going to take the baby there, then just go to the shopping area. There is a swim up bar in the middle of the shopping area. The beach area is in Majual, which is about 5 miles away from the port. Costa Maya/Majual is a fishing village with about 100 population. It's not Cozumel and I really enjoyed the port as it's not commercialized. They are building "tourist traps" such as Senor Frogs, which may be open by now. They have a museum there, too. The snorkeling was fantastic there, though.
Roatan, Mahogany Bay was built by Carnival, which is right next to the terminal. There are two ports there, Mahogany Bay and Coxen Hole. If you port at Coxen hole, you will have to take a cab to the beach. We went to Tabyana, which was very nice. The tour through the ship is more reasonable than the cab fare as it includes transportation, entrance, lunch, and tea/water plus beach chairs. There is some shade available at Tabyana. If you go to Mahogany Bay, the chairs/umbrellas are free. There are volleyball courts, restaurants/bars, and a swimming/snorkeling area.
The ship will probably offer babysitting service, for a fee, during specific hours on board. Your child will be too young to take advantage of any of the children's programs. Also, you will not be able to take your child into the pools on board or the hot tubs on board. Just be sure to bring sunscreen and a stroller that will provide shade for the baby.