I tried it with both Enable and Disable Block Sleep.
hibernatemode 3,25 twice each.
I put it in sleep for at least 5 minutes and then wake.
There was no difference between each.
pmset -g stats
Sleep Count:2
Dark Wake Count:0
User Wake Count:2
When I tested hibernatemode 25 with SSDT with deep idle enabled, I got a loop condition where it rebooted and then went to sleep, so I tested with SSDT with deep idle disabled.
If you want to use hibernate 25, use SSDT with deactivated deep idle because it is likely to conflict with deep idle.
Use SSDT regardless of whether Block Sleep is on or off.
Wake is also easier than with hibernate 3 because you can wake with the power button.
Is pmset restored to default?
Check if sleepimage is created in /var/vm.
Update:
I did a battery drain test for 1 hour each.
hibernatemode 25
100% -> 100%
hibernatemode 3
100% -> 85%
Update 2:
It is now possible to resume using the Power Button from S3.