You can use: "ought to arrive" in place of "should arrive".
No, "They were supposed to arrive" means a different thing from "They ought to have arrived".
In the latter, the speaker is asserting that they came to the wrong decision. They have arrived at a decision different from what the speaker thinks is right.
In the former, the speaker is saying that it was supposed/expected that they would arrive at a different decision.