多亏 + (了)+ [noun / clause],[sentence]
[sentence],多亏 + [noun]
幸亏 + [clause],不然 / 要不 + [sentence]
多亏 gives credit: the good result happened because of this person or thing. It takes a noun or a clause, often with 了, and 才 frequently marks the result.
It can also come second, after the result.
幸亏 is about luck. It takes a clause, and the bad outcome that was avoided often follows with 不然 or 要不然.
Because it needs a clause, 幸亏 can't take a bare person the way 多亏 can.
亏得 means the same and is more colloquial.
None of the three can blame. For a bad result caused by someone, use 都怪 or 因为.