I was able to modify the EDID on three displays:
1. ASUS VG248QE - EDID was write-protected by default, but writing can be enabled for DVI by enabling "BURNIN" mode in the service menu (hold the menu button down while powering on the monitor, and then press the menu button to open the service menu). This trick did not work for DisplayPort.
2. Catleap Q270 2B - EDID was not write-protected
3. Motile M142 laptop - EDID was not write-protected
In theory, this should also work with DisplayID, but I don't have any monitors that support DisplayID to test, and they are likely write-protected anyway. I tried writing a DisplayID to the EDID address, which should be legal according to the E-DDC standard, but neither AMD nor NVIDIA seem to support DisplayID that way. NVIDIA in particular will not even recognize a monitor with invalid data, so you have to be careful or you won't be able to fix the data without using an AMD GPU or some other method.
Due to driver limitations, this program can only read and write up to 256 bytes. That is enough for an EDID with one extension block or one DisplayID block.


