Just for information:
I started a separate application with a service containing a 30 second timer. The timer contained PhoneWakeState and a 1 second vibrate. I started the service with StartServiceAt(svcStartAlarm, DateTime.Now, True) and made it a sticky service. I ran the app and switched the phone off. It work for about 4 minutes then stopped working.
I tried Service.StartForeground but this only worked for a minute before stopping. These have been run on a factory reset Samsung Galaxy s5 with kitkat.
Its my best guess that the service is being killed.
Jonathan