GUID_WICPixelFormat8bppGrayを指定して IWICBitmapFrameEncode::SetPixelFormatを呼び、8bppなデータを IWICBitmapFrameEncode::WritePixelsで書き込もうとすると件のエラーに。
IWICBitmapFrameEncode::SetPalette呼び出しの有無は関係ない模様。
まぁ 文字通りサポートされないフォーマットというのだから仕方がない。
物理的には同等である GUID_WICPixelFormat8bppIndexedを指定して IWICBitmapFrameEncode::SetPixelFormatを呼ぶことで逃げられはする。
GUID_WICPixelFormat8bppGrayって微妙よね。
パレットの内容がグレースケールなだけの GUID_WICPixelFormat8bppIndexedを GUID_WICPixelFormat8bppGrayと論理的に定義しているだけなので、ファイルに保存したりして物理層を介しちゃうと GUID_WICPixelFormat8bppIndexedにしか見えない。