The HAL WRITE is just for digital output. We have no function using the dac so you can simply use the arduino function.
That said, how do you plan to solve the timing problem. The function you have choosen gets called once you add a line but this has no timings an din fact will have to wait for the real move to finish. Woundn't it be better to add a realtime position tracker for x and y in stepX/stepY and send the new position everytime it changes. Not sure how fast the dac update is but that is what I'd do. That way you control also curing time. With correct scaling the values are the values to send to dac except if you get some angular errors and need awfully slow sin/cos functions to correct them.