If you are familiar with the International Calendar, i.e. my systematic extensions to ISO 8601, you are aware that it has a lot of subsystems running in parallel. This includes the classic International Standard Month Calendar, which basically is the Proleptic Gregorian Calendar without its lunar subsystem, the Computus. If we wanted to ditch that part in the long run because of its many minor shortcomings, we would need an adapted method to specify most civil and Christian holidays. For the (partially) lunar kissy of the Easter cycle, we would need a new approach anyway.
It just occurred to me that in this complex framework, we donʼt have to specify all holidays on fixed dates in a single calendar system, but we can specify them in the most appropriate subsystem instead.
Christmas is currently CCYY-12-25 and those numbers are deeply ingrained into popular culture. I think we can get away with treating “12” as “final month” here, but the day number should not change at all. Therefore, Christmas Day in IC becomes CCYY-Q4-3-25 in the Sym010-like subsystem and thus is not exactly 1 week before New Year's Day any more (which becomes a fragile definition anyway with a leap week at the end of the year). Birthdays and similar anniversaries would be handled the same.
Halloween is on the 31st day of the 10th month “October”, but more specifically on the last day of that month because it needs to be on the day before All Hallows which is on the 1st day of the 11th month “November”. This becomes CCYY-Q4-1-30.
German Rhenish Carnival season begins on the 11th day of the 11th month at 11:11. It would be wrong to tie this to “November”, because the symbolism of Eleven is more important and thus CCYY-M11-11 would be chosen and it would be disunified from the solemnity of St. Martin, now on CCYY-11-11 and then on CCYY-Q4-2-11,which is also widely celebrated in the region.
US Thanksgiving Day is defined as the fourth Thursday (--4) in November (-11), i.e. CCYY-11-4-4, which can be the last or second to last Thursday of that month. I would transform this into the fourth Thursday in the 11th month of the Sym454-like subsystem, i.e. CCYY-Q4-2-W4-4.
Easter is basically the first Sunday after the first vernal full moon. This translates well enough to the first Sunday after the moon (i.e. a 4-week month in the IFC-like subsystem) that has the Northern spring equinox in it. This is always CCYY-M04-W1-7 or, equally, CCYY-M04-07. Logical arguments could be made for postponing the feast for another 2 or 4 weeks depending on the definition of nominal full moon.
All of these “holy dates” can be cited as fixed dates in the International Standard Week Calendar (vulgo ISO week date): Christmas is always on a Tuesday, W52-2, Halloween always on a Sunday, W43-7, German Carnival starts on a Thursday, W42-4, US Thanksgiving is W47-4, and Easter is fixed to W13-7.
PS: IC includes an imperfect definition for a syntax to refer to a lunation in the International Lunar Calendar, which could be used to determine the date of Easter instead: CCYY-L04-1-7. Likewise, the equinox could be referenced more directly with a seasonal date, e.g. CCYY-S05-…, but it does not support fixed days of the week.