Null-area face could generate an int overflow, and potential numerical imprecision in face area computation could lead to negative number of rays-to-cast (though highly unlikely). Also, use domnant axis of poly normal as 'flattening' one, instead of always using Z axis. Points raised by Campbell, thanks!