CFrame train not moving player

Yeah, im pretty sure thats just roblox physics being jank. Not a scripting problem at all.
Fortunately, roblox are actually working on something which you can view here.

From the post:

Now with that out of the way, to avoid a potential other post, this is a beta feature, publishing a game using it will result in your game not working properly.
This is currently only usable in studio (i think)

There are ways to script you way around this, but i dont think its worth scripting a fix when this is coming out sometime in the future.