My brother's birthday is on November 22.  Once every 7 years, on average, 
his birthday falls on Thanksgiving.  I was curious about when exactly that 
would occur in the future so I did something like this in the bash shell 
on a GNU system:

for year in $(seq 2008 2060) ; do date -d 11/22/$year | grep Thu ; done

And if you try it, you'll see what happens -- it fails starting in 2038.

It also fails if you go back before 1970.

By the way, this method works for any range of years:

for year in $(seq 1960 2060) ; do cal 11 $year | egrep -B5 '^18 19 20 21 22' | grep November ; done

That is, it shows you every November for the given range of years where 
the 22nd of the month falls on a Thursday.  Thanksgiving wasn't on the 
fourth Thursday of November until the 1930s -- before that it was on the 
final Thursday of the month and therefore would always have been on 11/29 
instead of on 11/22.

Funny what you can do easily with these GNU programs, eh?

Mike