I think I might have come up with a reason.

The list of items in the split array aren't necessarily in the order that they are in the document.

An obvious solution to this (if I'm correct) would be to match the order of items in the split array to that of the pages in the document. However, I'm not sure if I the order in the document will be static each time the report is ran. Interesting...