Yes, it's another quirk by design.
The overlapping and collisions were designed to be used with moving objects and there are certain blocks and conditions built into them. When you use them with static objects they don't always work beyond the first time - in your case they're working every 2nd time. It has something to do with a design feature - Fusion waits for something to "change" before checking the condition again and with static objects that "change" doesn't happen.
You can solve this by inserting this:
* On loop "createXposcrosspath"
+ Y position of blocker = Y( "Active" )
+ Active 3 is overlapping blocker
Special : Stop loop "createXposcrosspath"
Because now Fusion is forced to re-check because there's a change in a particular condition every time - and then the loop also works every time.