Ours expire at... 0000UTC. There's no reference, it just does. If a DB runs to the 23rd, then why wouldn't it expire at 2359 on the 23rd? Try swapping to the new DB at 2358. The FMS will growl at you.
Our local (country AIP) procedure is to use the new DB from 1600UTC the day before, so for flights between 1600UTC and 0000UTC, you have to manually choose the new DB and you will then get an FMS warning about using the wrong DB. 1600UTC is in the middle of the night, as alluded-to in the last para of Check Airman's quote.