BIP32 Neutered function
It can also derive a non hardened xpriv, which we will use with the neutered function to make it an xpub.
The xpub derived, is the same xpub that we would get if we had done CKDpub on the original Xpub.

Yes. Neutering really means &quot;Do CKDpub and delete the Xpriv&quot;. There is no neuter function on Xprivs; it's for the wallet software, not the key derivation.

My other question on top of this, is if a Wallet software has the mnemonic key, would it be better to always derive from the mnemonic?

Deriving from the mnemonic requires additional computation, however requires less storage space. I don't think it really matter.

Also, Is the extended private key, the (private key + chain code), or is it the (magic + depth + fingerprint + index + chain + key) ?

The second.