Over at the “Running on Empty” blog, there is currently a nice series on game engine development with XNA in the making. It looks nice to actually watch someone doing such a major task and blogging about it. Also, for all students interested in programming their own, this is a good place to watch.
So far, there have been posts on developing the base engine (graphics, hardware layer, inputs, etc.), scene management, viewport management, physics, sky and terrain as well as a look into integrating a world builder tool. The only apparent question with these step-by-step approaches is of course if he manages to bring it to closure at some point or whether this goes on forever as he sees fit for his engine. Nevertheless, a good starting point, if you are interested in creating your own game engine in XNA.