What is wrong with OpenCascade? Why not use that?