It definitely has to do with how Cargo Ships replaces every "straight-water-way" entity you place with a different "-placed" entity. FARL doesn't know how to deal with insta-replaced rail entities, so it just gives up. First step is to see if Cargo Ships is raising the correct events when it replaces the entities, second is to have FARL respond and update its references as the process is ongoing.
I can get it to work on straight lines, but only by not registering "straight-water-way" with FARL as something to raise the "on_robot_built_entity" event for. You are left with unselectable, undeletable water ways because Cargo Ships didn't get to replace them with the "placed" entities. Somehow curved ones still get detected and changed, so FARL turns itself off when you try to turn.
Edit: So FARL raises "script_raised_built" for every straight and curved waterway, but for some reason Cargo Ships is only acting on the curved ones.