to make your status work you should check the status concept CRM SUS One Order (CRMSUS_O). Therefore you need to call the transaction CRMBS02 and check status schema CRMSUS_O. In the row 'Lowest status no.' the number for each customer status should be as low as the initial status, otherwise it is not possible for the system to reset the status (in your example' from 'accepted' to 'new' or 'changed'. So, for example the Lowest status no. for status 'new' is '10', then for status 'changed' or status 'In process' should be also '10' so that you could go back to 'new'.
If this is not the solution, you should examine the IDOC within transaction bd87 to find out, which status were delivered within your changeorder.
I hope I could have helped you.