I have iphone 4 and Google maps, too. I was experiencing the exact problem you described and I just couldn't fiture out how to make this work consistently.
Then I noticed that, everytime I had my phone on before getting in the car, the navigation worked and I could hear the directions through the car speakers. It worked flawlessly even when I was listening to music or getting phone calls.
It, however, did not work when the phone was off when I got in the car, or when the phone was turned off and then turned back on in the car. Nothing would come out of the car speakers or even the phone speakers! No sound, period!
One trick I figured out is, once I get in the car, I turn on the phone and then turn off the bluetooth on the phone and then turn it back on. When you do this, your bluetooth on the car will be disconnected. Connect the bluetooth/phone on the car and then turn on your Google maps on your phone The navigation works fine and I can hear the directions throught the car speakers.
To make the long story short, turn off the bluetooth on your phone and then turn it back on while in the car. Then connect the phone/bluetooth on your car.