ViewsForm::getFormId() constructs the form id from the view name and the display id.
If a view is repeated on the same page with different arguments (showing different cart orders in my case), the forms will clash cause the form id is the same.
Proposed solution:
DisplayPluginBase::elementPreRender() should pass $view->args to ViewsForm::create().
ViewsForm should store the arguments and use them in getFormId().
If there are no arguments, the logic stays the same, if there are arguments, we concat them and create a short hash.