Here the fact that I now check bbox's is a big help.    My code that checks these magic numbers only kicks in if the bbox's overlap.  And the cases where that would have happened with full sized notes, it won't happen with small notes.  So basically, it works OK.  But it is admittedly fragile, and there might be some corner cases that don't work right.  I will look into this too.