So, about a year ago, I composed a nocturne in Bb. And I used this harmonic progression in the B sections of it:
Bb -> Eb -> C -> F -> Gm -> G ->Bb
Now, out of the 7 chords in this progression(6 if you count both appearances of Bb as a single chord and not 2), only 2 are non-diatonic to Bb. Those being C and G.
The use of C in place of Cm is understandable. The piece sounded peaceful, so there was no need to interrupt that peacefulness by using Cm. And I used the G as a dominant function chord so it made sense that it was major. Now typically, movement by thirds is weak. But also typical is for that movement by thirds to involve 1 major chord and 1 minor chord, for example, this:
C -> Em -> C
That is not what I have going on here with this G to Bb motion. So let's look closer at the chords. Now I use them in root position but here, I will show the smoothest voice leading for most of the chords. Here they are with a Roman numeral analysis and how I would describe this chord progression. Tonic chords circled in green, subdominant area circled in blue, deceptive cadence circled in red, and the substitute dominant being pointed to.
So as you can see, the G major that I am using as a dominant function chord would in Roman numeral analysis be considered the VI chord of Bb major if you were to view the whole thing as being in Bb as I just did. The C major I considered to be the II chord, replacing the ii chord which would be C minor. It didn't feel to me as though it was a V/V because it was replacing the ii chord. So it still had that subdominant feel to it. Plus, C is the submediant note of Eb and chords that are a third apart tend to have the same functions. So the C chord is subdominant.
I think there are 2 mechanisms behind why the VI is working as a substitute dominant here. First off, it comes right before the tonic which just by itself gives the feel of a resolution. Second, I think half steps are the primary source of the strong resolution. The B in the G major chord wants to resolve down a half step to Bb. When you combine it with the D which doesn't want to move, and the G which wants to move down to F but can easily go up a third in the bass without compromising the resolution, you have a pretty good substitute dominant.
But, is this the reason why my G major to Bb major resolution works as well as it does?
EDIT: Since one of you asked for it, here is the nocturne that I composed. First instance of the chord progression I mention in this question is at 0:30 in the video.
You will also hear me use 2:3 polyrhythms both when I go to and from Bb minor to add those moments of intensity. Those sections are based around the circle of fifths.