I have also had weird behavior from BooleanSpilt, which I’ll link here in case it’s related and/or helpful:
Using Split as an alternative to BooleanSplit leaves objects open, and not always in a place that can be seen to be noticed and fixed, which creates its own downstream problems to troubleshoot.