yes thats the wrong way.. the inverse of a matrix is not neccessarily it's negative.

instead simply use this :
mat_inverse(matMtl, matWorld);
this copies the inverse world matrix to the material matrix.