As a practicing engineer I would never use the implementation shown. This is the standard covariance form of the Kalman filter. In operation the statement
s.P = s.P - K*s.H*s.P;
causes significant issues. s.P needs to always be positive definite but with rounding this will tend to violate this assmption making the Kalman filter 'blow up' over time or with poorly conditioned data.
The alternative is to process in the square root domain where the P matrix is expressed as a P=Psr'*Psr. Therefore the resuting matrix must always be positive definite and does not have this issue. An added advantage is the precision is doubled processing in this domain and can be similar to the input data resolution rather than 2x the number of bits to provide comparable precision.
For more information see
'Linear estimation' Kailath, Sayed, Hassibi or
'adaptive filter thoery' Haykin
IMHO one should always to filtering in the SR domain. There are also advantages of processing with separated real/imag data rather then complex if the underling data is complex.