how do i replace delay with millis in this code

You're using servo.write() which expects degrees, but feeding it what look more like pulse lengths.

So you want servo.writeMicroseconds()