Not sure if it an actual issue or just that the legality checker is just better, but I am just mentioning it just incase. I was using PKHeX to modify a Galarian Moltres 146-01 - Moltres - B61B5E5EEB9C Original.pk8 from ROC-PC
This is the spread I am trying to change it to
Moltres-Galar @ Safety Goggles
Ability: Berserk
Level: 100
EVs: 92 HP / 52 Def / 108 SpA / 4 SpD / 252 Spe
Timid Nature
IVs: 0 Atk
- Fiery Wrath
- Air Slash
- Taunt
- Protect
When using 210130, it is showing as valid and here is the resulting Pokemon 146-01 - Moltres - B9EE5E5EEB9C 20210130.pk8
When using 210406, it is showing as invalid and here is the resulting Pokemon 146-01 - Moltres - ECADEE5210B1 20210406.pk8
Also, know that the 210130 one is showing up as invalid in the 210406 PKHeX and the 210406 one is showing up as legal in 210130 PKHeX . So I at least believe it is limited to the legality check rather than any other changes PKHeX may be doing that I am not aware of.