That would only work when the filenames on both sides are the same. Opus 12 and 13 should be the same here.
It's passing {file}
as the name for both sides, which is the selected source file name. Nothing there refers to the destination file's name.
You could do it like this, if you want to ensure the left/right sides stay consistent:
@nodeselect
@if:Set SOURCE=Left
"C:\Program Files\Beyond Compare 4\BCompare.exe" {filepath$} {filepathdest$}
@if:else
"C:\Program Files\Beyond Compare 4\BCompare.exe" {filepathdest$} {filepath$}
I still use my version of that script all the time, and that definitely still works. The original version should still work as well.