DGW just readjusts block payments based on network hashrate.
I don't think it can stop 51% attacks
Not quite thought through thought: Masternodes need to run for a day or two before qualifying for payment, maybe the same principle could be applied to miners - you need to mine for 1440 blocks (1 day) before you qualify to receive any block reward?
Thus, if someone jumped in with ~50% of the total hashrate, at the very least it would cost them much more, and we'd have 24hrs notice that something was up.
Honest long term miners shouldn't mind the wait, but it might deter opportunistic attackers...?
In fact, what about a 'DGW curve' for block rewards - 1440 blocks no reward, next two days 25% then 50%, next day 75%, after 4 days you get the full block's worth. (Yes I know that's a line not a curve, you get the idea.)
This would give SPR a huge boost in blockchain security.