AHA! This may/may not fix it for you, but here's what I've recently carried out...
I have carried out a full disc verify/repair (probably not related, but just in case - found a few stray blocks)
I then set hibernate mode to 25 (out of the choices 0, 3, 25 recommended by Apple).
I also set displaysleep and disksleep to be non-0 and less than sleep to remove warnings from pmset (before, disksleep and displaysleep were longer than sleep or set to 0 - warning pointed out this would have no effect...)
I believe the change to hibernatemode was the change that fixed it... try:
sudo pmset -a hibernatemode 25
Originally it was set to 3... given the speed of the SSD I don't mind it aggressively paging; the change from 3 to 25 means it has switched off:
0000 0010 (bit 1), in conjunction with bit 0, causes OS X to maintain system state in memory and leave system power on until battery level drops below a
near empty threshold (This enables quicker wakeup from memory while battery power is available). Upon nearly emptying the battery, OS X shuts off all
system power and hibernates; on wake the system will resume from hibernation image, not from memory.
Sounds suspiciously familiar. Dark Wake kept waking up until battery level hit near 0%...
My pmset is below for reference...
MacBook-Air:~ ian$ pmset -g
Active Profiles:
Battery Power -1
AC Power -1*
Currently in use:
standbydelay 4200
standby 1
womp 0
halfdim 1
hibernatefile /var/vm/sleepimage
darkwakes 0
networkoversleep 0
disksleep 2
sleep 10 (sleep prevented by mds, mds_stores, backupd, backupd, UserEventAgent, UserEventAgent)
autopoweroffdelay 14400
hibernatemode 25
autopoweroff 1
ttyskeepawake 1
displaysleep 5
acwake 0
lidwake 1
MacBook-Air:~ ian$
Good luck!