This problem comes up a lot. It depends on whether it's an adjective followed by a noun (1st case), a compound noun (3rd case) or either of the two that has morphed into a single word through popular usage. So, it's entirely up to you.
A quick bit of Googling seems to indicate that "icebox" is more common in the US and "ice box" is more common in Australia. If you have any other boxes in the game, then you might be better off with "icebox" to avoid the need for disambiguation. If you don't have any other boxes, then you can use "ice box", but allow "icebox" and "ice-box" as synonyms for "box" in the vocabulary{} block.