And just to follow up after further testing. Glenn is correct, as per usual.
Text comparisons do NOT work, although they may appear to work.
During my original testing (with condition spelt correctly), I must have only tested LookupCodes that were numeric. When we went live, the real database had lookup codes that are alphanumeric. As can be seen below, when using text comparisons, anything that is alphanumeric tested true and pure numeric codes tested false. No wonder I've been confused.
Text comparison results using real products instead of my numeric test codes.
PLEXT122412 Is Freight
9311744017119 Is Not Freight PLEXT121206 Is Freight
001 Is Not Freight
002 Is Not Freight Freight Is Freight
Numeric comparisons using the same products but with Freight set to a numeric code.
PLEXT122412 Is Not 342
9311744017119 Is Not 342 PLEXT121206 Is Not 342
001 Is Not 342
002 Is Not 342
342 Is 342
I wonder if this is a bug or by design?