Hi!
I have stumbled accross this thread, because my Wifi sync was not working anymore.
Since I am using both, IPv4 and IPv6, at home, turning off IPv6 for me is not an option.
This is my story and my solution.
However, for testing purposes I had turned off IPv6 on my Win7-64 machine a few weeks ago.
As time went by I forgot that I had switched IPv6 off on this machine which also has iTunes (with Wifi sync) installed.
Now for me it was the opposite case - turning on IPv6 again for my iTunes Windows machine, made the Wifi sync work again.
Why?
My router (Fritzbox 7390 with SixXS tunnel) gives out IPv6 prefixes for all devices, so as well for all iDevices.
All iDevices have an IPv4 address and several IPv6 addresses (link-local, global, etc.).
The iTunes machine was only using IPv4 and not IPv6, but the iDevices advertised themselves on IPv6.
So iTunes and the iDevices could not connect.
That's it!
I agree that the wifi sync thing seems to be mystic thing for a lot of people and the solution recipes are also sometimes very strange.
If you get a descent network sniffer (http://www.wireshark.org/download.html), you can find out what's wrong and why they do not see each other.
BTW:
I also have those interface index error of the bonjour service in my event log.
(ERROR: handle_resolve_request bad interfaceIndex X) where x=[1:24] with some number missing.
This is not a problem. Bonjours tries to open all network interfaces. On Windows they are identified by the interface index. You can see the used indexes on the command line: just type "route print" and you the first few lines will print the interface list. The number in front is the interface index.
You will recognize that the interface index of your main network adapter is missing in the list of "Bonjour bad interface index" messages in the event log. That is because Bonjour was able to open it successfully.