Clone / copy the patch here indeed changes the outcome of the function to correct value. I now have to pipe more examples through it to fully validate, but looks promising… Thanks a lot! 
Any explanation for your solution? Seems the memory is messed up at some point in my logic, but where exactly? The cv::show piece displays consistently with python.
Thanks again!