First, the caveats. I am no compiler expert. The fiction I write has very simple structural requirements, at least relative to what it seems your non-fiction book entails. I use Acts, Chapters, Scenes, and only the Scenes have text. So perhaps a fellow non-fiction writer who has worked through the kinks of the v1.9 compiler will pop by with more detailed advice for you.
That said, your structure for the most part makes sense to me. Something to be aware of is that the v1.9 compiler is driven by structural level and by type (folders vs. docs, as Katherine points out above). So, for example, you can specify that Book Sections will print differently than Chapters. The idea, I think, is to aim for consistency. So if you want all Chapters to print with the same formatting, than it makes things easier on you if the Chapters are always the same type and at the same structural level.
(Just FYI, the Windows v3 of Scrivener will bring an overhaul to the compiler, in that it is less dependent on structural level. Nothing I’m advising below will be broken in v3, but having consistent types at the various levels will no longer be necessary.)
Using folders as Book sections is fine.
Your chapters are sometimes folders and sometimes documents, and this inconsistency may cause you complications later when it comes time to compile. There may be a case for using documents as chapters, but I couldn’t tell you what that is. I would use folders, and enter any chapter specific text inside the folder itself. You can convert from folders to documents and back by right-clicking on the thing and choosing “convert”.
Similarly, your sections of chapters are sometimes folders and sometimes documents. I would use documents for these, unless you are planning on another sub-level, in which case I’m not sure which type you should use, and maybe in that case it would help if you could provide more info about what you’re trying to accomplish.
Does the above make sense to you?
One other thing. I hesitate to throw this out there, but another approach you can take is to leave your structure as is for now. In other words, write the book, and restructure it as needed when the time comes to compile it. Or maybe the middle ground is to make a reasonable attempt to structure it now with the compiler in mind, but not get into nitty gritty details of output compilation until after you’ve written the thing.