It's nice to see the new variables and drop-down lists being used.
It might be something else but I think it's probably going wrong because of timing issues. For example, when you tell Opus to open something in the destination pane Opus will not wait for that folder to finish loading before running the next line of the command, because the loading gets done in the background.
You can insert some delays between the commands by using ping (or some other command that causes a delay) to make the button more reliable. Have a look at the horrible hack that I posted to this thread for a (bad) example. Of course, this isn't ideal because if things are running slowly one day then it will go wrong.
You may also find you have to prefix the lines (except the variable settings stuff at the top) with "@sync: dopusrt" but give it a try without that first as it's hopefully not needed.
You can also avoid having to open the destination panel completely by specifying the FTP site as the destination for the Copy command. Unfortunately if you do this you have to put the site's password in the button (or request the password via the {Rs} dialog box every time the button is run). This is beacuse you can't give the copy command a site bookmark name; instead you have to give it an FTP URL like ftp://user:pass@site//dir/dir