This spreadsheet will help you understand the problem, and lead to the solution
Create these Named Columns and formulas in a spreadsheet:
Ran is a number between 0 & 1.
Note when Ran is 0.5 Score equals Rating. Above 0.5 Score will be higher, below that, lower.
STD is Standard Deviation (default 7). Raise that and Score will rise.
If you don't know what NORMINV does, google "Inverse Normal"
Once you are comfortable with the above add a few more rows.
Sort the table by descending Score and the rows will shift accordingly. And the positions will be correct.
Note that unlike the 2 videos which only seem to consider the winner, this calculates all positions.
Now all you have to do is find someone to program it to run through several 100,000 iterations.
Except RAN now has to be a generated random number.
And after each iteration update a table of Runners X Positions by adding 1 into the appropriate position for each runner.
So at the end you have ~probabilities for every Runner and their Positions. Hence Odds.
I've done similar things for other sports, including Golf with (say) 156 players, and it works fine and fast.
Beats me why Benter didn't do that.