What the players know isn't the point. Most of the time they won't know. That doesn't make it okay to deceive them. It's like the example I gave upthread about a few friends of mine that are very sloppy with money, leaving bills all over their houses. It would be very easy to take one without them ever knowing. Theft is not right, even if he never found out.
I've also seen a few instances where this sort of railroading was discovered. It isn't easy and it doesn't happen often, but I've never seen the players happy about it. Players in my experience generally want their choices to matter, even if those choices are as minor as which path to go down. If I were ever in a game where I discovered that the DM was deceiving me and railroading my PC, that would be the last game I played with that DM.