You are right, custom layers inheriting from GraphicsLayer can't be printed.
We'll try enhancing it in a future version.
Thanks for reporting that.
Unfortunately I don't figure out any workaround except rewriting by yourself the webmap serialization but it's not that easy.
Maybe, instead of subclassing the GraphicsLayer, you might add the new functionalities you need by using attached properties.
But it's just my 2cts because I have idea about your need.