Our VTOL plane cant hold its altitude but instead slowly loses altitude till it lands

we made a tilt vtol plane and we were planning on making it hover to a specific height and hold it’s height.
commands we tried when writing a mission are Qloiter, SET_LOITER_TIME and just simply writing DO_VTOL_TAKEOFF set on a specific height and sending the mission but as you can see in the below video it very slowly lands back to the ground instead of holding its height.

https://youtu.be/NDBlnfTBEMc

we have tried putting DO_VTOL_TRANSION before the loiter command and setting it to 3, we have also tried setting the loiter time to different values and all that seemed to change was that the plane seemed to land slower when ever a longer time was set for the loiter.