I've been struggling with this for the last 3 days. I'm at my fucking wits end. I want to cause bodily harm to IHVs.
Please, if anyone can help, let me know.
So I managed to get it working properly by using the bresenham algorithm and doing it by using points. However, it's much slower than it used to be (still realtime though). I guess that's the price to be paid for accuracy :(.
Since horizontal and vertical lines using D3DPT_LINELIST did work as expected, I decided to leave those as D3DPT_LINELIST calls so that they'll be fast (other functions like FilledEllipse depend on the HLine function).
This has been one nasty affair. I could just fucking kill.