I don't think you have to do two cross products here. You can determine what the tangent for the bottom of the extent is based on the tangent for the top and the direction the `s` texture coordinates are increasing.