It would seem that there is some inconstancy in the way BB treats midi when using the Open Special > Open Midi File and how BB deals with drooping the same midi file onto BB. It looks like Henry Clarke may have been lucky in his choice of midi file (or I was unlucky in my choice).
Anyway, this is how I manage to get it work for me for a range of midi files.

I opened BB for a new song as per the manual and BB detected the chords and populated the chord sheet accordingly. At this point I checked/corrected the chords and part markers. I then switched to Track view to confirm that the multi-track midi was stored on the melody track. I set the cursor to mark the position of the first bar of the midi song.

Now it was time to drop the same midi file onto BB. I first used a midi file that had been problematic in syncing. When I dropped the midi file onto BB and accepted the defaults for importing into the song, I could see the Utility tracks being populated by the Melody midi tracks, as expected. But what I noticed was that the individual tracks started exactly one bar after the Melody midi had started. This was the problem I should have noticed before. So, I repeated drop operation and modified the ‘number of bars to insert’ parameter, in this case it required -1. When I did this then everything worked as expected. I tried this with other midi files and found the sometimes I needed -1 or 0 or +1 (so far).

The Open Special command doesn’t provide for any offset so something is going on there I think with regard to synchronising how the midi is interpreted.
But I’m overjoyed that I can get this to work every time.