In reply to Jim Barbour.

Jim, this is working as designed. The YRDIF function was originally designed to calculate "age spans" for use in financial and government applications (and not for annotating birthday cards!), so some differences can be expected. Here's how YRDIF works (and I got this from an internal doc written by the developer, who apparently fields questions from leap-year-pedants all of the time...)

The ACT/ACT algorithm is used for computing age, with the following exceptions:
1) if startyear is a leap year, then use the previous year as the start year
2) if endyear is a leap year, then use the next year as the end year
3) if startdate is 29FEB, then use 28FEB
4) if enddate is 29FEB, then use 28FEB
5) after computing, reduce the resultant year count by 1 or 2 as per items (1) and (2)

Don't like/agree with the result? Then use INTCK as you've done in your example.