I think in general the current system is pretty good. It's not entirely arbitrary. The expectation is that people from the field, people who ran for Speaker, will be appointed more or less in the hierarchy that reflects their placement in the results. There's also an emphasis, and this is actually in the rules, that if the Speaker is an anglophone, the Deputy Speaker must be a francophone, and the reverse. I've never heard anybody suggest that there's a problem with that rule.
It's something that has to be enforced by the rules. It's hard to engineer a result where that will happen every time, that your first-place finisher will be of one language group and your second-place finisher will be of the other. If that were to be done, you'd have to deal with a separate rule. This is a package that deals only with Standing Order 4.