GPT header size should be set without the padding
The specification does state:
Size in bytes of the GPT Header. The HeaderSize must be greater than or equal to 92 and must be less than or equal to the logical block size.
According to specification we are good. However, there are implementations, assuming the header size 92 is the only valid header and will refuse to accept our GPT. So we do like linux and freebsd are doing - we set header size to 92, by calculating the offset of the padding in the tail.
Verified by updating the GPT and confirming the tools are happy about it. Checked manually we indeed do have size 92 recorded.