Depends what the contract with the care home says but it's standard to still charge when someone is in hospital as they can't rent the room out to someone else who would be using their services. Check the contract but you'll probably find somewhere in the small print that it states that the full cost is due when the room is unoccupied.
The homes are businesses and their fees are based on room occupancy - they don't seem to calculate the 'extras' separately. I guess it's easier that way as some residents will eat more, need more personal care, laundry etc than others so a standard flat fee for all, rather than individual fees based on the individual resident's use of the services provided, makes sense.
I'm not saying that charging the full rate when someone is in hospital is fair, but that is what happens if it's written in the contract. There may be some homes out there that don't charge the full rate but they're probably in the minority.