I *only* call a refresh of a combo / listbox in the Activate Event of the form, or from any control that may change the values of the table the list is sourced to. Try it from the Activate and see if it helps.
As a side note I have a form property on my form class that is called FIRST_TIME. The code to refresh the list in the ACTIVATE is only if First_Time is TRUE. Once I fire the refresh I set this property to FALSE so it won't refire the refresh everytime you click on the form.