I'm glad to hear the delay doesn't vary by tempo -- that simplifies things!
What I'm seeing is that it does indeed take a while (tens or hundreds of milliseconds) for the recording to start playing, while the SMF playback starts faster, so the two play out of sync. I'm seeing the same problem when playing a recording at the same time as the tempo. I made a recording of a 90 bpm click and am starting that simultaneously with the built-in tempo at 90 bpm, and the offset is easy to hear.
Looking back at my testing around July 2018, that's also what I saw (
in contrast to my incorrect reversed description earlier in this thread which I'll edit to correct): MIDI events are played about 215 msecs before corresponding audio events.
(In the example image below the top channel is the audio file (Recording) and the bottom is the corresponding MIDI event (SMF file) playing a low latency synth. These events line up in the DAW, but played from BH you can see about 214 msecs delta.)
I think the best next step is to try speeding up the recording playback. I realize this will mess up the offsets you have set up, but I think it's better in the long run to have these items play in sync by default. Then if we need to add a setting to intentionally delay the recording, to account for delays in the MIDI chain, I could do that.
That would probably be best for your overall user community (particularly those that use this feature in the future). For me it will still mean converting about 70 MIDI files in my DAW, then reattaching them to recordings, etc. etc.

But I could get excited about it if you also added a msec-accurate (or at least 10s msec accurate) optional +/- adjustment to relative Recording/SMF timing with (preferably) global effect. As mentioned above, I will still need to add a relative (and constant) offset between SMF and Recording to account for non-BH related downstream latencies for lighting control. (For a 'corrected' BandHelper that eliminated the current 215 msec delta, instead of delaying
MIDI by 100msecs, I'd need to delay the
Recording (relative to SMF) by about 115msecs.) But not requiring the PIA of applying these micro delays to the MIDI tracks within the DAW and instead just setting one value in BH... great!
One other consideration might be how a 'correction' would affect Recording playback timing relative to already implemented Automation events. Changing things a few hundred msecs might not affect things like manually recorded lyrics scrolling synchronization enough to matter, but it could get somewhat bothersome for other kinds of more precise Automation events such as fx patch changes for some customers.
(Also, I'd observed a slightly different kind of offset issue for the very beginning of a Recording / SMF; as you do analysis I recommend you focus on events after the first second or so file to not get fooled by some special cases at file start.)