There are staff who only work at the buffets and don't work in the main dining rooms. Just because you see your assistant waiter working in the Lido restaurant doesn't mean all of them are up there. They rotate through but many workers bussing those tables are only assigned to the buffet. My understanding is that $1 per day also covers those people providing room service since not everyone tips them (I do). For perspective, RCI now charges $3.95 for room service orders between midnight and 5am.
You are correct in that RCI doesn't automatically add gratuities to your account unless you pre-paid them - which is done at the time of booking and also is a requirement for those choosing My Time Dining. Their website is confusing in it's wording. For those not familiar with RCI, once aboard you can choose to have tips added to your account but you have to request it. RCI still uses cash in envelopes as their default method. I predict they will go to auto-tips sometime soon.
None of us works for Carnival, so nobody here can explain to you why you are now tipping for jobs which you believe were salaried positions 5 years ago. You are assuming Carnival has the same payroll structure as RCI. Maybe they have changed it for some job descriptions in order to reduce expenses. Unless someone here works in Carnival's accounting department you won't find the answer to what jobs are salaried and what ones are not.