programmable filter & transform issue

I am trying to create an animation where two mask volumes move relative to each other (volume 1 fixed, volume 2 moving) and their intersection is rendered as they move. To do this, I use transform filter to move volume 2 (call it volume 3) and I use programmable filter with volume 1 and 3 as input to calculate the intersection of the two mask volumes. When I change the transform parameters I expected volume 2 move only, but both volumes move. Is this behavior expected?