Con tu código lo tienes casi bien, pero otra cosa es cómo pones el html. Si pones esto:
<div id="bloque1"></div>
<div id="bloque3"></div>
<div id="bloque2"></div>
y ahora el css:
#bloque1{float: right;
width:170px;
}
#bloque3{float: left;
width:380px;
}
#bloque2{ }
El bloque 2 deberá ocupar todo el espacio restante entre los bloques 1 y 3
EDITO: otro cabezazo con
DaPhyre