if you don't want to use render_to_target + a refraction shader, you could just create a few transparent sprites and place them where the heat is.
Make a sprite of gaussian-blurred noise, then program the sprite(s) to be overlay + transparent and to shift in random directions. This won't be AS good, but it makes it look half-foggy and half-heat-haze without the fuss.

If you really wan't to make a go for it, program the sprites to be generated by a source and move away, becoming larger and more transparent before deletion, while moving a little in random directions. Just make sure you have more than one overlapping so that different pixels are dynamically changing their transparency.

Cheap... but effective


http://www.groundtacticsgame.com/
Alienware m17x R Custom laptop
specs:
Intel Core 2 Extreme Quad CPU Q9300
2x Nvidia 280GTX 2GB vram
6GB ddr3 memory@ 1333Mhz
512GB SSD
1200p 17' screen
runs Crysis Warhead on max settings at 1200p at 90 fps