I suspect, the INF is internally flagged as "used", but this is not shown. I have encountered similar situations in other scenarios and even with air units, which are not offered in certain phases and subphases, despite meeting all requirements.
I suspect, sometimes (not very often), units which have been "touched", are flagged as "used", even if they have not been moved or any other action taken for them.
For example, if you pick up a unit during movement and cancel the move by pressing ESC, does the unit get flagged internally?
Right Click on unit => Undo, does the unit get flagged nevertheless?
Command => UNDO All seems to work more stable and reliably. Or is it only a gut feeling?
Best advice is IMHO to avoid all Undo completely and rather exit game, restart, restore the autosave from the phase before and redo from there. Can anybody comment, if this makes sense or not so much?


