Where in the world are you? There will be a way to make this work. The most obvious solution is to flash the M3 cluster with your 330CI cluster, this may resolve the problem although I doubt it. I am suprised that the cluster did not work correctly, this only proves that the sensors on the M3 (Speedo) is different.
Actually, there are four memories in the new 2001 onwards BMW;
2. LKM (Light Control Module - Stores in blocks of 100Km)
3. EWS (Alarm Control Module)
4. Keys (Syncronised with the EWS)
I can re-program your cluster and re-sync everything back up again to factory spec.
If the mileage on the cluster is less than what is in the other memories, all the other memories stop counting up, until the cluster catches back up again with the other memories.