The following information might be a hint to what's going on. After playing the FLAC files, I tried playing some lossless WMA files. The Denon receiver said that it couldn't play the format of the new files (which wasn't too surprising). But... when I went back to my PC, it showed all the WMA files from that second folder as having been played once. So maybe it's pre-reading the file to see whether they're playable, and then reading them again at playback time, reporting both reads back to MC19. Just a guess.
My guess is that your guess is correct
( A good UPnP server ought to trial open a file a) to check that it exists, b) read its actual bit rate, bit depth, channel count, size etc., and possibly c) read its current meta data, before it issues the push command to the renderer. Then when the music is streamed to the renderer, the server has to reopen the file again. And very often a renderer will for its part also do a trial GET on the track to read a), b), c) above, before it actually does the real GET to pull the music stream. Indeed I have seen some renderers that do two trial GETs, once to get a), b), c) at the head of the track, and again at the tail of the track to check if there is an ID3 tag (c) at the end. So if both server and renderer are doing trial opens, then the file might actually be being opened up to 4 times for each play operation. I think MC does have the smarts to discount its own trial opening actions, but perhaps it cannot discount the renderers trial opening actions. Particularly since the number of trial openings by the renderer may be between zero and two - depending on the device concerned...)
PS to MC admins: You probably need to move this one over to the Media Network forum too