There is definitely something screwy going on. The following code...
*part 1
set date to dmy
x={12/08/98}
? x, day(x), month(x), year(x)
*part 2
set date to mdy
x={12/08/98}
? x, day(x), month(x), year(x)
should return...
12/08/98 12 8 1998
12/08/98 8 12 1998
but depending on which part I comment out and then re-run, I either get
08/12/98 12 8 1998
12/08/98 12 8 1998
or
08/12/98 8 12 1998
12/08/98 8 12 1998