Well, DHCP leases expire after a certain period of time (usually a few days in the case of ISP-assigned IP addresses) and need to be renewed; a truly dynamic IP address would change each time this occurs, since you are just assigned a new one, rather than being reassigned the one you used previously.
But you're right of course, different ISPs do things differently. I was just mentioning what's most common here in the UK.
There is no point in forcefully changing the users IP, especially since it would cause a momentary interruption in services (all connections made with the old IP would be broken, hope you weren't playing online or uplaoding a large file to a server that does not support resume).
When the lease is expiring, the client essentially asks the server "Hey, I'm still using this IP, can I keep it?" and usually the server allows it to keep the IP (because as I said, changing the IP would break established connections). If the ISP provides dynamic IP, the IP usually changes when the client is restarted (and then asks the server for any IP), if the DHCP server does not have a database, it will most likely give out a new IP.
OTOH, the DHCP server in Windows 2003 will give out the same IP as long as the lease is not expired. Though I have not tried releasing (ipconfig /release) and then renewing (ipconfig /renew) the IP, maybe it does change then.
And some ISPs I know use quite short leases (something like 30min or 1h), the downside of that is that if the DHCP server goes down the clients soon lose their IPs (and the connection).