Mistery: I2C not working, blink working

Well from my experience when this sort of thing happens, it always turns out to be the thing that is obviously right and dosn't need checking.

Use a scope to determin if the mega is sending out any I2C signals.