I noticed some strange behaviour of the BRepAlgoAPI_Cut. If a face is built with BRepBuilderAPI_MakeFace and has a shape like the attached picture 'No_Shape_Cut.png', the BRepAlgoAPI_Cut won't cut anything out of the face. It basically comes down to faces with material inside a hole. Faces with holes, built with BRepBuilderAPI_MakeFace, don't give any problem. Faces with material inside the holes built with a second BRepAlgoAPI_Cut (so create the hole in the face with the BRepAlgoAPI_Cut algorithm) don't give any problems as well.
Could this be an error? Also, does there exist another way to create faces with holes other than BRepBuilderAPI_MakeFace or BRepAlgoAPI_Cut (BRepAlgoAPI_Cut will take too much time).
I attached a some code that tests this situation. Note that it is written in Python, as I'm using the PythonOCC wrapper.