My question is - how often do OSX and/or typical, modern apps and programs actually run in single core mode? My assumption has been that nearly all programs now utilize multi-core threading, and so practically speaking, the multi-core score is really the relevant bit.
Am I wrong? Are there significant portions of time when things are running on a single core? Or are single core operations pretty minimal, with most computations being threaded between the two cores for maximized efficiency?
Yepp, you are wrong (or better put - not entirely correct). The everyday computing is still very asymmetrical, meaning that most of the important critical work is done by a single thread. For example, the entire UI (event processing, drawing etc.) happens on a single application thread. Browsers are essentially single-threaded etc. It is true of course that most modern application offload processing to background threads, but that is usually work that has lower priority. In order to have responsive, fluent applications, you want to maximise single thread performance.
Of course, there are applications that benefit from multiprocessing especially well. But these are usually applications that perform heavy-duty computations which can be easily split in multiple symmetric chunks such as compression, video encoding, image processing etc. However, Core M is certainly not designed for such workflows.
To sum it up, you need to consider whether the work performed by the application can be easily split in multiple chunks of same status (priority, amount of work etc.). If yes, then you will benefit from multi-core performance more. If no, you want to allocate most of the resources to the main thread.
(Of course, the real question here is whether or not those single-core values really matter in real-world usage.... so what if he 1.1 is slightly faster in single-core testing, if most everything is happening multi-core anyway?)
They do not really matter, but for a different reason

Geekbench is a synthetic benchmark and should be taken very likely in this context. First of all, it measures sustained performance (which is irrelevant for average everyday tasks). Second, it only measures certain aspects of performance. This is akin to judging worth of a family car by how fast it can carry a ton of bricks up a very steep hill at full throttle.
Most real world application operate very differently you have a very long cycles of waiting for user input, were literally nothing happens. Then the application has to 'burst'-process that input as quickly as possible and update its UI/data etc. to maintain the illusion of fluid interaction. These bursts are usually very short, we are speaking milliseconds here. Geekbench does not measure things like that. It also does not seem to benchmark other things that are vital for everyday applications such as indirect branches, branch prediction, cache behaviour etc. All in all, Geekbench is a reasonable measure if you want to judge how well the CPU will perform in a long-lasting computationally intensive task. For 'casual' (=home/office) usage though, you are probably better of looking at real-world browser tests and similar.