Bool operation between concave poly and cube

Hi all,

I tried to use a concave body and a cube for Boolean calculation and difference. Before calculation, I used vtkTriangleFilter to triangulate them respectively. The calculated results are not what I want。
Any Idea?

Senna