You wrote:
S-S'= 0 -2.00111533788828e-020
2.00111533788828e-020 0
That says that S is not symmetric. It's ALMOST symmetric. But... not quite. If this is due to numerics, you might be able to fix this with:
symmetricS = mean(cat(3,S,S'),3);