Because manifold pressure sucks! Seriously though, the manifold pressure measures how much the engine is able to reduce the pressure between throttle and inlet valve by sucking air into the cylinder.
When you apply carb heat the air gets routed over a heat exchanger that uses some of the excess heat from the exhaust system to heat up the intake air, however the reason it becomes less dense, is because the pressure stays the same. If you look at the so called ideal gas law, you'll notice that pressure is a function of density and temperature, if you have a closed system, where the density can not change, increasing the temperature would indeed increase pressure. This is not a closed system however, so the pressure actually stays more or less the same and the density decreases, and it's not the reason for the manifold pressure increase.
The thinner air leaves the engine with less oxygen to burn and thus it produces less power, the RPM drops, causing the engine to "suck" less air into the cylinder, this gives the air more time to sneak passed the throttle, and the manifold pressure rises. For the same reason the manifold pressure rises (slightly) when you reduce the RPM for cruise. Any reduction in RPM, for whatever reason – engine damage for example – as long as the throttle doesn't move (or if you have carb ice, which has essentially the same effect as closing the throttle), your manifold pressure will actually rise. Remember, it seems counter-intuitive, but the engine is fighting a battle with the throttle, trying to keep the manifold pressure down by sucking the air out, while the throttle is trying to increase the pressure back to atmospheric by letting air in.
When the throttle is anything but wide open, the situation looks like this (image borrowed from the linked article)
It's related to the fact that the manifold pressure gauge, when the engine is stopped, will read ambient pressure, i.e. 29.92 inHg on a standard day at sea level, which is usually interpreted as "full throttle", it doesn't matter how the throttle is positioned. So it's not really showing how much fuel/air mix you're shoving into the engine. In fact, we're not shoving at all, the engine literally sucks it into the cylinder as the piston moves out of the way during the intake stroke. In this particular case with the engine off, it just means that enough air was able to sneak by the throttle and equalize the pressure. It is not flowing nearly fast enough to equalize the pressure as soon as the engine is running though.