Have you already solved this problem? I have done the same..... and with original mpps, but I admit it was very old version.
The problem is that the file read is 1MB and actually it's a 2MB ECU as you can see from your BDM read. Your write failed because the file is wrong size.
Fix the file by filling the BDM read with MPPS read at the zeroed data area. I'm sure you'll find the spot. I'm afraid the car will still not start after you BDM write the fixed version back. You will need to tow it to the dealer to have the EWS synced.
You can verify your fix by reading it again or taking the ID with MPPS.
Always with BMW's remember to switch the ignition on using the start button (with clutch pedal up).
BMW edc16 sw is car specific so I would not write it with a read from another car...
Big Big Thx, that was a great answer!