Here's your PM:
It's user error. It fails becase the month headers in D2 onwards are TEXT. They need to be DATES, as they were in the sample workbook.
Once you fix this, it should work. Sorry - it's not for me to do this for you.
Next time ask here, NOT via private message, please.
It does exactly what you asked for in your sample data. Did you actually try it or just look at it and not see MONTH and assume it wasn't right?
This bit finds the first column with an entry:
x,XLOOKUP(99999999,fm,D3:V3,"",-1),
If it's not doing what you want, then you need to provide a...
Assuming you have 365, try this:
=LET(d,D5:V24,p,FILTER(A5:C24,A5:A24=X2),
fm,BYCOL(d,SUM),
x,XLOOKUP(99999999,fm,D3:V3,"",-1),
HSTACK(p,FILTER(FILTER(d,D3:V3>=x),A5:A24=X2)))
What's your locale? Here in the UK it converts automatically.
You could try Data | Text to Columns > Next > Next > select DMY > Finish.
Attach a sample workbook.
For example, if you have Excel 2021 or newer, this in H10:
=LET(x,INDEX(C54:C69,MATCH($I1,$A54:$A69,0)),
IF(ISNUMBER(MATCH(x,{"H","O","L","I","D","A","Y"},0)),"HOLIDAY",x))