Accuracy
I've tried to make this system as accurate as possible, but there is always going to be a certain margin for error when dealing with dates, calendars and timezones. So you should only think of the results as "estimates".
The system uses the default DateTime object in PHP. I'm sure there are far more accurate ways of measuring anniversaries, but I tested a number of dates and compared against WolframAlpha with no differences.
If you know of a better way of getting these dates then please let me know about them - always keen to learn. However, for most of humanity, I think this works perfectly well.
Matt x