難易度は高いけど確実に何でもできるのは、Adobeが公開してる仕様書に従って
HSPでバイナリデータを作ってbsaveする方法です。
仕様書全部実装は大変そうですが、Win32 API呼ぶときに構造体作るような感じで
自分が必要な機能だけなら出来なくはなさそうです。
https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/
細かく制御する必要がなければ、一旦レイヤーごとの画像ファイルを作って
ImageMagickやGimpのようなPSDファイル対応ソフトをexec等で呼び出して変換も出来そうです。
https://stackoverflow.com/a/13514555/1514010
上の二つの中間としてCやC++製のライブラリを使ったDLLやプラグインを作る方法もあります。
https://github.com/MolecularMatters/psd_sdk