OP_CHECKSIGADD says that:
Pop 3 items from the stack:
- Signature (top)
- Public key
- An integer counter
But BIP-342 Rules for signature opcodes says:
For OP_CHECKSIGADD,
- the public key (top element),
- a CScriptNum n (second to top element), and
- a signature (third to top element)
are popped from the stack.
The signature (witness) has to go first on the stack, so it has to be the third one, as the BIP says.