This is pretty much the way I work too, but I find it hard to block in a good amount of time just in one language.
One thing I have found is that having separate monitors and keyboards for the different languages help me. I have a bank of them set up on a long bench and I slide from one to the other as needed. When I use this approach I am able to get back into the swing much faster than switching desktops on the one monitor/keyboard setup. There is something about changing the physical set up that helps me switch mentally.