DivX and XviD are both capable of producing ISO Standard MPEG4 video that can be decoded by eachother, and indeed any ISO MPEG4 Decoder. The biggest compatibility problem is that files produced by XviD and DivX have different FourCC codes. These codes identify the codec used, thus DivX can’t recognize XviD encoded movies. You can use a simple program to change the FourCC code, for example from DV50 (DivX5) to XVID and files will in general play properly. You just have to convince the codec that it can do it:) You can also set the FourCC code to something different during encoding, thus allowing you to use the XviD codec to produce files that will play in DivX without any interaction on the part of the user.
And speaking of incompatibility, how about Microsoft’s WMV? It seems to be gaining popularity pretty fast and cannot be converted to anything. I wish people would stick to MPEG.