Im affraid im not sure of what that reason is, but if you need a stopgap you could always not users filters and directly write a specific sql string with required ORDER BY by hand and update your record source from a line of code....
Are you changing the orderby/orderbyon proppreties and your filter is getting cleared?
How about checking the filter property and resetting it if it changes from the required value?
If its not a simple answer, you could create a small debug table and have the users filter/order/sql source/etc. settings saved each time they do anything and create a backlog of problematic instances and try and track things down.
martin