It works and only take 0.25s - whats the problem? For the scale of the task you are setting here, I think 0.25s is pretty good going. I tried a few other methods but they all came out taking longer, which isn’t surprising.
Might also just be your GH view. Try baking the model and see if the same thing occurs in Rhino. Here’s the rhino file of the intersection on my machine: