There are several ways. The more foolproof the method the more expensive/annoying for the consumer. You need to decide how foolproof you want this.
The 100% foolproof way is to supply a dongle. They are small devices that plug into a serial port/usb/parallel port. It would contain a clock, and when that clock says time is up, it is up. You could even custom burn a cd per dongle to ensure the key was correct, so they couldn't get a new dongle from you and use the old cd. You could then have a drive that would only access the CD is the dongle reported all was OK.
The easy to hack solution, when the decrypt driver is installed, add the current date into the registry and every tim the program is run, check the registry. Easy to foil. You could reinstall, install on another machine, set the computer time back etc etc etc.
Get self expiring media. Not sure if this is available to the masses, but the idea is that after either
1) It has been read X times
2) It is Y days old
the media degrades to such a poor quality it can no longer be read. I don't know how reliable X and Y are, or what kind of ranges are available.
I like the idea about using an NTP server. Assumes that computer is on the net, but this is less of a restriction now than it used to be.
What is the CD, who are the customers, and how long do you want them to have it? If the cd will sell for thousands, do it the right way. If all you have is a bunch of clipart, just use the registry.
Moohoo