• I don't know if I'm allowed to answer my own questions, but I've solved the problem.

    The issue is that the Parameters collection is zero based and not 1 based. The error would occur when the customisation was not found, so I changed the for loop to be 0 to Parameters!Localisations.Count() - 1 and everything works nicely.