There is even more to this, as you need to add the MeshFunction for cells to this, as explained in Integrating over an interior surface - #4 by MiroK
In DOLFINx, one can reduce it to a one-sided internal integral, as explained in for instance: Add one-sided integration example as example of custom integration · Issue #158 · jorgensd/dolfinx-tutorial · GitHub or use the same notion of custom integration to consistently orient the integration entities of a dS
integral.