Each combination of public keys, even from the same hardware wallets, can result in a unique XPUB or ZPUB for that specific multisig setup.
The xpub or zpub is simply an encoding of the public key and chain code at that level. The only thing that will make it change is a different derivation path. Indeed, an xpub or a zpub (or any other type of master public key) at the same level encodes the exact same data other than the prefix and checksum.
For example, take the following seed phrase:
electric rule silver fatal glide deny reduce beef flower captain shed transfer
At m/0, the xpub is as follows:
xpub68EHu5nWAcFPupRV4LUMuacQHpM2D3n1qxjxQkS4Qk21sYNkgsMSpwW2ZHSTvTUF4EKejymDQm4FKJcbFD2ESjp5jMbmPY3F6649VUJFKf2
If we decode that from Base58 to hex (and add in a few spaces for clarity), we get the following:
0488b21e 01 2e6e7c8f 00000000 b8a8672f29e366205ec4a809cb608b40c0ef948687821367e99374ccc4d6efd1 02804083e75db2a886af7b176e7a48cab9db9e66231315a9e4a0449b737e3fd8b2 6ae4f545
This is broken down as 4 byte version code, 1 byte key depth, 4 byte parent fingerprint, 4 byte child index number, 32 byte chain code, 33 byte public key, 8 byte checksum.
Now, let's take the zpub at the same derivation path:
zpub6mtpWR8LTyLMcQoij43cKkoQdkdv6Hm1gBnPyYDqAkmmyk1DCBga54pJbhMdvGn5sWZGEvxLL5mM5sqigbrG3DBHU2zcZMgDdYBSGf1zZjG
Looks totally different, right? But let's decode that just as we did above:
04b24746 01 2e6e7c8f 00000000 b8a8672f29e366205ec4a809cb608b40c0ef948687821367e99374ccc4d6efd1 02804083e75db2a886af7b176e7a48cab9db9e66231315a9e4a0449b737e3fd8b2 b6ceaafb
The only thing that we change is the prefix version code, which is what changes the first four characters from "xpub" to "zpub". Because this has changed, the checksum changes too. And so the encoded key looks totally different, when in reality it is almost identical.