However, you're correct about coils icing up. That impacts some regions more than others. I'm in a fairly dry high desert climate, and our coils don't ice up unless we have fog (at which point, yes, they ice badly). There are defrost cycles that reverse the unit and melt the ice, but it is a problem in climates where it tends very humid in the winter.
However, there are a lot of places where it works fine, and one can always use a dual fuel setup, where a heat pump is used down to whatever temperature it starts having problems, then switch over to something else (gas fired furnaces are the usual backing option) in the extreme cold. You still get the energy savings of the heat pump while it works well, but can keep a house warm down to quite chilly temperatures.
Of course, if it gets really cold, a ground source unit becomes worth looking at (heat exchange with the ground, either via a deep well or a bunch of coils under the yard).
If you put 1000W into a Bitcoin miner, computer, resistive space heater, etc, you get 1000W thermal out.
If you use that 1000W to turn the compressor in a heat pump, you get far more heat out (3-4x is a reasonable average in a lot of areas), because you're not simply generating heat from the energy - you're using the energy to move heat. A heat pump is an air conditioner in reverse - you cool the outside air and heat the inside air.
A standard CPU dissipates heat as a resistive heater would - you pump 100W into the CPU, you get 100W of heat out. I'm not sure what you're using to claim that a CPU "is literally a heat pump" here - it's not, by any standard definition of a heat pump.
And heat pumps are vastly more efficient than resistive heating (or using the heat from a microchip).
In many places, for every 1W of power a heat pump consumes, it can move 4W or more of heat into the space.
If you put 1000W of electrical energy into a Bitcoin miner, you get 1000W of heat out the far end. It's the same efficiency as a resistive element space heater, just has done some work (useful or not, it's still work) on the way through.
Same thing for a computer running BOINC or Folding@Home. Power goes in, heat comes out, but you've done something useful in the gap.
I typically heat my office (off grid solar shed) in the winter on waste compute - I've got a few computers in here that run Folding@Home/BOINC and I just run them if I've got surplus power. I have propane backup for the really dark grey days ("generator days" if they extend past about a day - it's cheaper to run a gallon of gas through an old generator than to radically expand my battery bank), but most of my winter heat comes from running F@H/BOINC. To the point that on a clear, sunny winter day, I have my window open and fans sucking cold air in or I'll roast in here. I can hold about 1.8kW of load no problem on a clear day.
Now that I have solar on the house, I've considered adding an old compute rig or two in there for winter heat. It's less efficient than our heat pump on warm days, but we also get some cold, grey, foggy days in which the heat pump likes to ice up badly. Normally, if the heat pump isn't keeping up with things, the thermostat will call for the backup coils (which are just big resistors) to aid, and they're the same efficiency at turning electricity into heat as a couple computers. Old Xeons aren't amazingly power efficient, but you can also get them for free or nearly so and throw compute at your preferred projects.
One can optimize for a wide variety of things - energy spent, compute performed, Bitcoin mined, minimum cost, etc. It works better, and is a lot more efficient, if you look at everything as a system and integrate it. I don't run BOINC tasks on my homeserver when we're in air conditioning season, but I light up a couple cores of them in the winter.