You must be defining your callback function inside a function that is reused by the widget system-- my guess is inside the widget
method.
Define the callback outside the widget itself, and only apply (apply_filter
) inside the widget.
In other words, add your callback as class method, and add it something like this:
add_filter('posts_where', array($this,'filter_where'));
You should be able to remove it with a similar syntax.
Without seeing your code in context that is the best I've got.