Hi Bob,
Thanks for your question. My name is Josh Wells and I am a support engineer on the Microsoft Dynamics CRM support team. I have reviewed the issue you are having and I don't have a lot of good information for you. What I would need to see is a verbose trace while the issue is reproduced. The stack here really just shows me that when we are trying to load the workflow is when it experiences an issue. Looking at the code, there is an If/Else section where I think the issue is occurring at but without tracing, I cant determine which path this is taking. In addition, I can't explain why it would be happening.
The only thing I can think of is that the workflow is already being loaded by the async service when it tries to load it again. Do you happen to have multiple Async services? If so, can you try disabling one for a test?
Other than getting verbose tracing and really digging deeper into it, there is not much we can really do. Let me know if you have any questions.