I would use a different connection string (possibly one that sets Pooling to false, or just fiddles with the Application Name) for the connection(s) you use within this transaction scope. That way, this connection ends up in (a different|no) pool to the other connections, and cannot accidentally be picked up by other code.