Hi
In SPD WF's there is an option to do an 'If' statement which could relate to either the completing of the next step or to check if the document is checked out. Allied to this is a 'Wait for N minutes/hours/days' which is always to a good one to add to the mix.
I think a combination of 'wait for a bit' then 'If checked out, wait until it gets checked back in' followed by then pause for a bit more (perhaps only 1 minute) should help in the circumstances.
I hope the above helps, however please add more detail regarding the process if you think we can help more.
Regards Alan C.