Difference is computed by normalizing both dates to the same calendar base and taking the difference. Days are counted by calendar day (Gregorian). Weeks = days / 7 rounded down. Years/months/days uses a calendar-walking approach, so a month is the actual number of days in that month (February 29 is handled for leap years).