i've actually found the syncing in xbmc to be significantly better than xbmp in many ways. a lot of files i have that go way out of sync on xbmp stay almost perfect with xbmc. mostly these are files with weird framerates or with odd audio sample rates (i've got a lot of problems with combining pal video and non-44.1khz audio (my xbox is ntsc)). in any case, xbmc handles these a lot better than xbmp.
that said, though, xbmc does have issues with syncing. mainly when you pause, or do something that brings up the osd (either toggling subtitles or showing the time). what seems to happen there is that the sound keeps going normally while the video hangs for a while (from one or two frames worth up to as much as a second or two depending on factors i can't quite figure out).
and of course, there's the problem that you can't adjust the audio syncing manually (actually you can, if you muck around with the input.conf file in the mplayer directory - the lines for down, up, pgdown and pgup are in fact the d-pad buttons with the default keymap.xml. change 'em according to the mplayer docs and you can change all sorts of stuff you wouldn't otherwise be able to).
regarding video formats, i've been ripping dvds with both qpel and gmc for a few months now and haven't had any problems with either xbmp *or* xbmc (that's with divx 5.x, not xvid, i haven't tried xvid with either of those settings). the only files i've encoded that had any problems were a couple constant-quality encodings with xvid, and those were without any fancy settings (b-frames, qpel, and gmc).
in my experience it seems that mplayer (and thusly xbmp/c) handles 2-pass files better for some reason, although it seems odd to me that this would be the case.
the settings i have been using, btw, are as follows:
Quote:divx 5.03 (and recently 5.1.1)
2-pass vbr
gmc and qpel both enabled
cbr mp3 audio (lame --alt-preset cbr 160 encoded through besweet)
various container formats (both avi and ogm work well on xbmp/c, but ogm seems to be a tad better, so i've used that on my more recent stuff. i use matroska on anything with more than one commentary track)
for ogm, i add chapter points and subtitles, but i haven't actually checked if the chapters work
i rip using gordianknot (whatever the latest version is)
encode to 1-disc (unless there are two or more commentary audio tracks, in which case i make it 2-discs)
i always run a compression check and set the resolution to either 720xwhatever or whatever gives about 70% of the compression check results, depending on which is less (in other words, i don't go over 720xwhatever). i always leave the resolution at multiples of 16x16 (never bothered with 32x16 like the defaults suggest)
they haven't given me any problems with playback, except on the movies i did in matroska (neither xbmp or xbmc will play them, although i'm using an old build of xbmp, so newer ones might play them fine). i'm low on disc space at the moment, so those tend to stay on my computer instead of ending up on the xbox, so that's not an issue.
one of these days i've been meaning to encode something short in a bunch of different ways to test audio sync and other playback issues (varying vbr/cbr/constant-q, status of qpel/b-frames/gmc, xvid/divx5, ogm/avi/mkv, vbr/cbr/ac3 audio, and so on) with settings that give relatively constant sizes and quality. if i get around to that i'll post the results around here somewhere