My use case was kind of different, I needed multiple line elements with different stroke-widths connected to the same nodes in parallel, in the final code I had to take stroke nature (evenly spaced on both sides when connecting to point) into account as well.
Though I can see how d3 trail can improve some cases (like when defined stroke widths sum, exceeds node diameter)