It is basically impossible to do anything about. A user could "restore" his entire computer so that the software thinks its running at any particular date.
You could make it harder by letting the program ask some time-server for the time. (Still though, if someone really wanted to use an old license he could reroute any such traffic to a local time server.)
Related questions / answers:
- Using Java to Query a Server for the Time