I had to take some time to confirm it for myself, but you are absolutely correct that vtkImageMapToWindowLevelColors does not pass the Direction to its output. I looked through the code for vtkImageAlgorithm (which is the base class of all VTK image filters), and it completely ignores the Direction. This means that nearly all image filters will ignore the Direction.
In my own applications, my preference is to just use Spacing for the images (no Direction or Origin). Then I account for orientation and position by setting the orientation and position of the actor (i.e. the vtkImageSlice or vtkImageActor) that is displaying the data.