How can I customize the details panel for a class?

Yeah, the includes are a bit of a mess. You will have to include a bunch of header files by head as the required dependencies are not being pulled in automatically. We will clean that up, eventually.

You also need to add some modules to your PrivateDependencyModuleNames array in the Build.cs of your project, such as PropertyEditor and EditorStyle.

I think it would be best if you take a look at the existing implementations - preferably not the ones in the DetailCustomizations module, but those in plug-ins. They are pretty self-contained and show you what you need to include.