Честно говоря, почему по-разному обрабатываются, я точно не скажу, зато сразу вижу, что [A-Z0-9\s]+ - это крайне неудачная конструкция. Символ \s включает в себя не только пробел, но и табуляцию (\t), и перенос строки (\r и \n). Получается, эта конструкция включает в себя все строки подряд, где нет знаков препинания.
Кроме того, в данной программе весь текст обрабатывается не построчно, а целиком. То есть символы ^ и $ означают не начало и конец строки, а начало и конец текста. Так что ставить $ в конце выражения не нужно.
В общем, я бы предложил
(Plane: \)\r\n[^\n]*?M3)1\r\n
заменить на
${1}2\r\n