A couple of days ago, I had troubles with anonymous access to a custom form for a custom list. I created a list, and added a DataFormWebPart to the page using SharePoint Designer as shown below.
I set the page and the list to allow anonymous access, and I could get to both. However, when I opened the page with the custom list form, the DataFormWebPart displayed the following error :
Just set DataSourceMode of SPDataSource control to Webs or ListOfLists as shown below :
For more information about the differences between Webs and ListOfLists, See this SharePoint Designer Team Blog post for a decent explanation of these options: