There has to be some method of creating a curve in #geometryNodes from two vectors (in this case, raycast start and raycast hit) that I'm not aware of because it is stupidly convoluted.

Like, yeah, there's the Curve Line primitive, but it does not accept field types, which the Raycast returns.