What Yal said... BUT if your just trying to change the order of the draws within the drawing object and not move them to different depths outside the drawing object then you could do that. You just need to make sure you draw things in the correct order. You could go about doing that many ways, but possibly the easiest, depending on what your doing, could be to push your draws into an array or data structure and then in your draw loop over that data and organize your draws that way. It would be a pain, but if you need to do it that would be one way.
If you need to change depths OUTSIDE of the drawing object then there are also solutions, but a bit more complicated. Since you cant set drawing to a depth outside the drawing object you instead need to create new objects at the depth you want things drawn. So, when you would normally say DRAW_WHATEVER(X,Y) or whatever your using to draw, you would instead say something like with(instance_create(draw_object,x,y)){ depth = 123; DRAW_WHATEVER(X,Y) } Then you would want to build a little controller to handle the new draw object that you are using to disperse these draw events. But, this will be kind of messy if your talking about making a lot of draws at different depths. You would essentially need an object at every depth you want to draw on.
Just as an aside, and probably nothing at all like what your doing, but for my game (top down zelda style) I have 4 master draw depths that I draw effects to. Below the floor, below the player, the player, and above the player. Those four depths allow me to put things pretty much anywhere I need with some limitations. So, my point though is that perhaps you only need a handful of actual depths to draw to. If you need some large number or some random number then you should probably make system like I mentioned above to place objects at the depth you want and then draw from those.