I spent some time today trying to figure out why a lookup filter on a custom field on a standard object in Salesforce in a field set in a Visualforce page was not respecting the lookup filter set on that field. Lookup filters are really great, unless of course you want to use them on a field in a VF page, because as of Spring ’11 this is not supported:
Visualforce pages, the Salesforce to Salesforce invitation page, and Ideas don’t fully support dependent lookups. Fields on these pages with dependent lookups still appear and Salesforce still prevents the user from saving the record if the lookup is required; however, Salesforce does not dynamically filter lookup the dialog results or prevent users from entering invalid values.
It’s a “beta” feature right now, so I guess that means don’t use it until it’s fully fledged. Yet another argument that standard functionality (page layouts in this case) should be used instead of Visualforce and Apex controllers whenever possible.