Может, вот это пригодится:
Функция, вычисляющая разницу между датами.
--- возвращает контейнер из семи значений:
1. полные годы разницы - от 0 до бесконечности
2. полные месяцы (свыше полных лет) - от 0 до 11
3. дни неполного месяца (свыше полных месяцев) - от 0 до 30
4. недели месяца (свыше полных месяцев) - от 0 до 4
5. дни неполной недели (свыше полных недель) - от 0 до 6
6. общей кол-во дней разности - от 0 до бесконечности
7. дни неполного года - от 0 до 365