Giving this a second look it would appear the trouble line (assuming you are using the area example almost exactly) is: highlightLine.setZIndex(1000);
Since SVG does not support z-index the sprites are actually sorted using a binary search causing the sprites to not maintain their original ordering from when they were added.
So the current solution is to either not use setZIndex at all in your chart or to specify the z index of all sprites in which you care about the order.