Need help with duplicatemovieclip and getnexthighestdepth!

I am developing a flash project in Actionscript 2, I know it better and find it easer than AS3 which is the reason I’m using it, I’ve got pretty far but I’ve come to a point where I really have no idea what to do and I’m hoping someone can help me.

Basically the concept is there is a button you press which puts a square on the screen. This square can then be dragged around the screen to be placed wherever. The button can be pressed as many times you like and the each square can be moved on its own.

The first 2 squares you get work perfectly, both appear and then can be dragged, but on the third square when you click it, it tries to drag the first square.
I googled and searched around for hours and found out people saying about using getNextHighestDepth which I have but I’m not sure if I have correctly.

My code on the square is:

onClipEvent(load){
this._x = 250;
this._y = 250;

this.onPress = function(){
startDrag(this,true)
}

this.onRelease = function(){
this.stopDrag();

}
}

My code on the button is:

on (press) {
i = i + 1;
square.duplicateMovieClip(“square”+i, _root.getNextHighestDepth());
}

Any help would be appreciated, thanks!