Sparda,
I think all timers on computers will have the same problem. I think ICal or any other calender will depend on the system time to fire. So your app would not be different from any other timer and that I would not qualify as a bug of your application. You could make your user aware of the problem, but not as a specific problem of your app.
If you want to you could send messages into the past like "send PastTime to me in - 3 seconds", this would trigger right away since without changing the system time this is overdue an fires right away.
You could send multiples of the send PastTime for - 3, - 10 -20 etc seconds and when the message arrives comparing this to the seconds you saved when firing the message. Only if the actual seconds were lower then the saved seconds you would have a case of changed system clock.
BUT, this is getting ugly since you dont know how much the system clock might be turned back. I you want to catch all possible cases in 10 seconds intervalls your app would probably choke. I think on a Mac the start of the eon is midnight January first 1970, that is the time you get when the battery is gone and not internet connection exists for automated synchronization. All your appointments would have to wait until 2009 or 39 years, even if you get your counter restarted before that.
EDIT: this will not really work since sending a message to the past will fire immediately when sent and it is unlikely that the clock will be changed just in that moment. Oh well, a little brain bug
And since you seem to save the target date/time of for your reminder in this other field of yours, how would you adjust for that with the new time, even if you could catch the change of the system clock?
How do you want to handle time zone changes? Daylight saving time? Welcome to the wonders of time... You might wand to look at the seconds as the unversial reference for all things time/date in Rev.
I would just do it as you intended and forget about the possibility of changing the system clock.
You might be interested in a thread over at the mailing list:
http://n4.nabble.com/SEND-IN-TIMe-td343141.html#a343141
that discussed occasional failures of the send in time feature for one user, while others were not seeing this problem.
regards
Bernd