This is really interesting to think about.
I've run on many courses with gravel sections but would rather not have it. A dirt surface like one might find on farm lanes is better, especially if you need to include access road areas throughout the field.
I'm sure some people might disagree but I like a course made of several loops of the same trail. Maybe try to keep runners in view at all times. Great opportunity to involve spectators / the community for large events and host multiple races with different lengths (could have several different lengths for a wide range of ages).
The course should be difficult, not a place to PR. I like course with a some character and uniqueness. Maybe include a few surfaces if possible, dirt types, grass, mud.
Most importantly, and this is something I really wish you saw more in XC, throw in features that need to be dealt with. Water/mud pits/ditches, hay bales or logs or low fences, short and steep hills would be nice but if the land is already rolling then not as necessary. I've always liked the idea of the original type of steeplechase/cross country races in England. Through fields and farms.
Thinking about it, in the right location, the opportunity to design a cross country course is really an opportunity to create a unique local attraction and involve the community in running.