The PCB only needs to be big enough to land a through-hole usb connector [1] and then bring copper traces from each pin perpendicular to the connector to the edge of the PCB. You can even make the PCB quite long If you want to you as this will give you long copper traces you can expose to land the wire ends on, which is very useful if you don't have a great soldering iron or don't have much experience soldering. You could even 3D print an overmould to make it look professional, otherwise epoxy. Using this method you can get an right angled usb that's a tighter angle than anything you'll find online because it doesn't rely on cable bend radius to make the angle.
[1] https://www.digikey.com/product-detail/en/mill-max-manufactu...
In actual fact for USB C you'd probably end up having to mount all connectors in the cables on tiny PCBs regardless, because of the potential requirements for signal conditioning and electronic marking ICs unique to USB C implementations. With so many pins on usb C without a doubt you'd need these tiny PCBs to be double sided to get all the traces to the PCB edge, and I wouldn't be surprised if some commercial usb C leads have PCBs with 4 layers.
I've only designed PCBs myself for the traditional USB PCB mount USB A plug (an Amphenol part) and Micro B plugs (Hirose ZX series parts) as these are very simple pinouts and are perfectly doable for a hobbyist I'd say if you want custom cabling. USB C looks significantly more complex and an in-cable PCB interface is the only way to go for that level of complexity.