Issue getting correct Left/Right resulting shapes from SplitShape with none xy-aligned plane

I'm trying to get splitting a shape with a BRepAlgoAPI_Section plane using BRepFeat_SplitShape to work and followed the examples:

work fine for a cylinder split along the x-y plane (dir 0,0,1), however when the splitting plane/normal direction is elsewhere the resulting shapes in Left or DirectLeft, either results in all faces or nothing. I have tried the two approaches below and I'm sure its something simple I just don't get, any hints or ideas would be very helpful.

const TopTools_ListOfShape& aLeftShapes = aShapeSplitter.Left();
for (auto i = aLeftShapes.cbegin(); i != aLeftShapes.cend(); i++) {
aBuilder.Add(aLeftCompound, *i);

TopTools_ListIteratorOfListOfShape theList = aShapeSplitter.DirectLeft();
for (;theList.More();theList.Next()) {
aBuilder.Add(aLeftCompound, TopoDS::Face(theList.Value()));