Вы всегда можете расширить их класс GObject и использовать его в качестве оболочки, но дело в том, что библиотека GTK + использует GObject для внутреннего использования. Я не знаю, почему вы захотите заменить его (и может возникнуть жалоба на то, что вы переопределилигде-то символ или не позволит вам вызывать какие-либо методы с использованием вашего пользовательского объекта в качестве параметра, так как типы не будут совпадать, если вы его расширите).
Если вы хотите использовать его в качестве оболочки, вам следуетрасширьте GObject и напишите конструктор, который принимает GObject (и любые другие необходимые вам вещи), и просто оборачивайте GObject в свой пользовательский класс каждый раз, когда он требуется.