in _prepare_forward no matter if the noise cov is diagonal we use `n_nzero == sum(eig > 0)`
I don't think inv['noise_cov']['dim'] is the right value. With SSS + 3 SSPs on MEG you should get a rank of 64 - 3.