Properly implement SerialPort.Read (char[], int, int)