As far as I know, rogers is using host name as DHCP client identifier. So on their end, they just bundle IP with hostname. If they want to change, they just change the IP bundled with that hostname. This way, they have control over IP assigning.
Cable connection can be always online so unlike dialup (which a lot more users share a relatively small pool of IP) it makes very little sense for Rogers to change IP often. The exception would be if someone abuses the service, say running a warez or porn site that generate a lot of traffic, then they might change IP for that user. (Well at least that's the case of the former owner of my last IP.)