Alternatively, Sephiroth is in control of Cloud at the time he drowns her, since he seems to have some sort of control over him at periods throughout.

But really, I love this theory. As in the game the player takes control of Cloud, I like to think that I killed Aeris.