Has PaymentMethod always been a locked field on PaymentsHeader or is this a recent change?
Yes, PaymentMethod has always been a locked field. This is one the main fields that is used to filter the invoices that are loaded into the details of payments.