Please correct me if there is a mistake here, but I'm thinking the problem was:
It was a misunderstanding of the convention (using [x y z] for 'SliceDirection' makes it confusing).
Using 'SliceDirection' [0 1 0] will slice along the first dimension, because matlab defines the first dimension as y, the second dimension as x and the third as z.