You have to wonder why he doesn't have a heart, though.
Xehanort and Sora were really the same kind of being- a vessel with two hearts fused into one.
Why did the hearts separate in Sora's case but not in Xehanort's?
Perhaps it has something to do with the nature of the bonds. Sora and Ven's hearts bonded through light, Terra and MX's hearts bonded through darkness.
As MX said, Terra's heart would gradually become a part of his own. So it might be the case that Terra's heart was completely consumed, and the only heart left was MX's. For Ven, though, it was only a matter of taking temporary refuge in Sora's heart, Ven's light obviously wouldn't eat Sora's heart. Hence that accounts for why MX possessed Terra, but Ven didn't possess Sora.