No, this would be not good. Think through the sequence of events. Your inkbird/heater fails and shuts off. Now the backup heater turns on. And then stays on until you notice the problem.
The code would work, and not cook your tank because it would evaluate the temp statements last.
Fallback off
set off
if output INKBIRD = off then on
if temp > 78.3 off
if temp < 76. 0 then on
Again as you stated "top to bottom", the apex would evaluate the output statement first and leave the outlet off if INKBIRD was on. If INKBIRD was off it would turn the outlet on, then evaluate the temp statements to turn the heater on or off. The temp statements at the bottom would never be evaluated if the OUTPUT statement was not met since the INKBIRD statement is first, also with the set command, the outlet would always be off unless INKBIRD was off.
At least that is my understanding of apex logic and how I would program the outlet. I would probably use a virtual as you suggested, but whats been posted is quick and dirty code.
FWIW, I use virtual outlets for all my alarm situations. That way when you get an email/txt of an alarm you have an idea of what the alarm is for instead of just a general alarm code.
The reference manual is a great place to start, but as stated quite a bit of it is out dated, and the neptune forums is also a great place to learn some coding. It really is basic coding once you understand it.