J'arrive à obtenir le même résultat visuel que toi sur firefox en ajoutant 1px de largeur au div #left_col (donc 151px au lieu de 150px) et en scrollant l'écran vers le bas.
Je ne sais pas pourquoi ton firefox te donne le même résultat visuel qu'IE sur ce coup-là (et ça m'intrigue vraiment car mon firefox/linux, pourtant 3.5.8 comme le tien, ne déclenche pas le souci sans modification de ma part).
En tout cas ça te donne une piste de solution.
EDIT : ça marche aussi en faisant la même manip sur #right_col, donc il y a clairement un problème de calcul de taille de boîte entre un de ces deux éléments chez toi pour des raisons qui m'échappent (sous IE c'est plutôt normal, mais sous firefox vraiment je comprends pas). En tout cas leur cohabitation l'un à côté de l'autre se fait au pixel près et c'est bien ça qui semble gêner
EDIT#2 : le problème de calcul de taille peut être lié au fait que tu précises une width ET une bordure pour le div parent de ces deux divs (vu que ça se joue à un pixel près).