Esencialmente windows y linux son diferentes trata de poner un frame sin panel en windows y linux y mira la diferencia.
Ahora por que pasa eso es por que no lo estas haciendo bien. Un ejemplo de lo que podrías hacer sería meter el list box dentro del sizer.
Código:
+--------------+ -----> Sizer
| TextCtrl |
+--------------+
| ListBox | -----> Listbox con tamaño fijo y corto
+--------------+
| MasCosas |
+--------------+
Ahora si quieres una explicación detallada de por que falla tu programa puedes encontrarlo aquí en
Usando Sizers.