Given the previous reply, I did try setting my Xsgi settings differently - then I messed with some other stuff, decided to reboot (I had been using chkconfigs as well), and on reboot, it won't get to the login screen.
This generally happens if the Xservers entry contains a carriage return someplace in the middle of the line - it needs to be one line only with "-depth 24 -class TrueColor" added to the end of the existing line.
BadMatch errors are visual depth/colordepth mismatch errors - so I'd check that out first.
BadMatch errors occur when only specific values are acceptable, but another value is provided. The valid values may be a small set of enumerated integers or they may be a relation between other arguments, e.g., a graphics context in a drawing request must have the same depth as the drawing window. There is rarely more than one possible BadMatch error for any particular request type, so identifying the problem is usually straight forward. In my experience, most BadMatch errors are related to drawable depths. Make sure your windows, pixmaps, visual types, colormaps, etc. have the correct depths in your X requests.