To draw the solution:

Obtain the distance between the intersection of A & C and the intersection of C & D.

Obtain the distance between the intersection of B & D and the intersection of C & D.

Substract the first from the second, a postive value is the distance to move B & D down, a negative is the distance to move B & D up. Once moved, a fillet with R=0 will extend/trim lines A & B and they will be equal in length.

Command: '_dist Specify first point: _endp of Specify second point: _int of and

Distance = 408.3907, Angle in XY Plane = 315, Angle from XY Plane = 0

Delta X = 288.7758, Delta Y = -288.7758, Delta Z = 0.0000

Command: DIST Specify first point: _int of and Specify second point: _endp of

Distance = 509.1399, Angle in XY Plane = 90, Angle from XY Plane = 0

Delta X = 0.0000, Delta Y = 509.1399, Delta Z = 0.0000

Command: m MOVE

Select objects: Specify opposite corner: 2 found

Select objects:

Specify base point or [Displacement] <Displacement>: _endp of Specify second

point or <use first point as displacement>: @100.7492<270d

Command: f

FILLET

Current settings: Mode = TRIM, Radius = 0.0000

Select first object or [Undo/Polyline/Radius/Trim/Multiple]:

Select second object or shift-select to apply corner:

Command: _list

Select objects: 1 found

Select objects: 1 found, 2 total

Select objects:

LINE Layer: "0"

Space: Model space

Handle = daf

from point, X=4899.1352 Y=1960.9711 Z= 0.0000

to point, X=5018.7501 Y=2080.5860 Z= 0.0000

Length = 169.1610, Angle in XY Plane = 45

Delta X = 119.6149, Delta Y = 119.6149, Delta Z = 0.0000

LINE Layer: "0"

Space: Model space

Handle = dab

from point, X=5187.9110 Y=2080.5860 Z= 0.0000

to point, X=5018.7501 Y=2080.5860 Z= 0.0000

Length = 169.1609, Angle in XY Plane = 180

Delta X =-169.1609, Delta Y = 0.0000, Delta Z = 0.0000

There is a small difference in lengths due to rounding errors. But if this were done programtically these would be minimized further.