I bought a 1500W ceramic heater from Home Depot + some ducting and used pop rivets & screws to mate it all together. $40 total.
On the high setting, this heater soaks everything under the cowl nicely. Oil temps are 100F+ and cyl head temps are 120-130F.
The heater is on 24/7 and is put on right after shutting down the engine. The airplane is in a unheated hangar less than a mile from the Pacific Ocean, and it has really cut down on the external corrosion. The air often gets really wet here and this heater keeps the dew point spread large to keep any moisture from condensing inside the cowl. It's so hot you can't leave your hand on a cyl for more than a few seconds.
As for the internals, there have been a couple good articles already posted in the thread regarding the validity of keeping the entire engine (not just the oil) warm to combat internal moisture and corrosion. I'm happy with the results I'm seeing.
Here is the heater with ducting bent up and riveted:
Just put the outlet in the lower cowl opening and point it towards the sump.
Oil temp is ~110F
Cyl head temp. Don't pay any attention to the labels, they are just for fun.
