I have (at least it looks like) the same situation with non-interrupting Message StartEvent.
If I’ve fill everything as it should, MessageStartEvent converts to the stadard StartEvent when SubProcess is placed.
But there is a little bit different configuration differences and as a result, different workarounds.
But I guess, the root of the problem is the same.