There is a simpler solution, you can call the Line functions directly from LineBatcher:
float LifeTime = 1.f;
bool bPersistentLines = false;
bool bDepthIsForeground = (0 == SDPG_Foreground);
ULineBatchComponent* LineBatcher = (InWorld ? (bDepthIsForeground ? InWorld->ForegroundLineBatcher : (( bPersistentLines || (LifeTime > 0.f) ) ? InWorld->PersistentLineBatcher : InWorld->LineBatcher)) : nullptr);
if (LineBatcher)
LineBatcher->DrawLine(LineStart, LineEnd, FColor(1.f, 0.f, 0.f), 0, Thickness, LifeTime);