Speed brakes are only good when going fast. As you may know that the B737 or any other jet doesn't like to slow down and Descend at the same time.
I personally use the technique of getting it down early then lose the speed. I usually fly between 500-1000' below the Vnav profile to give me some margin. Smaller or less busier airports you can usually follow the Vnav profile. CDA approaches from TOD is are quite hard to do at busier airports.