Arduino DUE pinMode Outputs High By Default

I'm not sure if this is a bug or not, but using an Arduino Due with IDE 1.5.3 (and prior it seems) makes pins that are set as outputs HIGH by default. Is this the intended design since it is the opposite of the AVR based Arduinos?

For those curious people, the problem stems from PIO_OUTPUT_1 passed as the second argument to PIO_Configure() in the OUTPUT case of pinMode in Arduino/hardware/arduino/sam/cores/arduino/wiring_digital.c. To make pinMode output LOW by default, change PIO_OUTPUT_1 to PIO_OUTPUT_0.

case OUTPUT:
            PIO_Configure(
             g_APinDescription[ulPin].pPort,
             PIO_OUTPUT_1,
             g_APinDescription[ulPin].ulPin,
             g_APinDescription[ulPin].ulPinConfiguration ) ;
        case OUTPUT:
            PIO_Configure(
             g_APinDescription[ulPin].pPort,
             PIO_OUTPUT_0,
             g_APinDescription[ulPin].ulPin,
             g_APinDescription[ulPin].ulPinConfiguration ) ;

Are you suggesting that this default behavior is a bug in the
Arduino/hardware/arduino/sam/cores/arduino/wiring_digital.c file?

Maybe there should be an OUTPUTH and an OUTPUTL defined
to make the two cases explicit?

Yes, I believe it to be a bug in wiring_digital.c if for no other reason than it is different from all other Arduinos. On the AVR based versions, setting a pin as an output with pinMode results in the pin being driven LOW instead of HIGH. There may be a reason for changing it to the new default HIGH behavior, but none that I can find. I was posting here to see if any engineers had an opinion, explanation or if indeed it is a bug.