John,
You need to call the listbox's Requery method after you change the source of data for the list.
Lists and combos have an internal list of items that are displayed. Your source is only used to populate this internal list at the time of instantiation of the listbox. If you change the contents of the source you need to call the Requery method to get the listbox to update its internal list of items.