Printf in Arduino Due

I've been wrestling with line ending issues on serial ports for over 30 years.
Most of it because of the way that CPM, Windows, and MAC did things. (vs unix)
The non unix platforms don't have the simple concept of "newlines" or
concept of raw vs cooked modes.
As a result they tend to always send/need both and often screw things up.

You have made the assumption that the only consumer of the character output is the Arduino IDE.
This is not always the case.
Try using using some serial device other than the IDE to monitor the serial port.
maybe putty? or an actual terminal.
Also, there are some embedded devices out there with serial ports that parse serial data, and not all of them
look for to parse the lines.
Some embedded devices only look for the and toss the
since they were designed to be connected to a real teminal which sends a
when user presses the /ENTER button on the keyboard.

There is no one be all answer for this since in order to make it work for
all situations you really need to have both raw and cooked modes.
However, what I've found is that cooked mode, where carriage routines
are inserted, tends to offer the greatest compability.

Just some things to think about.

--- bill