You are free to choose whatever works for you. It is preferred to use different contracts solely coz of the fact that it would be a huge problem if one makes a mistake in one contract but deployed all 3 as one. And as you said, 3 contracts are even cheaper, then you have your answer!
Basically it's like uniting 3 web application into one monolith application vs having couple of services. A service always wins!