So, CheckOutItems fails, you get an error in the browser with a correlation id, and the id isn't present in the logs?
Usually, if something works in client but not in browser, the first thing I look at is postback - do you have postback set to always on the control that is running the command?
You could also try adding a button that just has a rule to submit data using your submit connection to the UpdateListItems method, see if that gives you anything more you can work with.