Hello,
Yes you are right, you can't alter an internal class as it is only visible for other classes inside the same assembly. Yet with how the game is designed and how C# works it might be possible to use a workaround and still replace one of those class. Sadly it will require me to investigate if i can make it work.
If it was an issue with a model i would tell you to simply replace the upperclass, but for behaviors as they all directly extends from CampaignBehaviorBase it's not possible ... So for now it's not possible. But will try to add something about it in the future versions, it's added to the "todo list".