Add your new layers to the Layer Enum both in ClassicUO and on the server with matching unused values, then add your new layers to the layer order client side. The packet is large enough that you shouldn't have to modify it as long as you stay within the default range- I started my new Layers at...
Is this still valid? Is this meant to replace or overwrite the XMLSpawner that comes with Pub58?
In either case, right now it does not compile as it references many methods that no longer exist.