The Sublime Text documents say:
Additionally, the sequence of characters that comprise the ligature must all be part of the same token, as defined by the syntax being used to display the file.
I have no idea what these tokens are, because SublimeText’s syntax files are not my idea of bedtime reading - but it’s possible that the syntax rules are interfering with the text-shaping process.
The font-drawing process only happens once (until a redraw), so perhaps certain combinations of characters are bypassed in certain contexts? The font is probably not to blame, because it’s not doing anything very complicated (no look-aheads or look-behinds, for example).