This time however, I have been able to encrypt some data and get another program to decrypt it. The problem is, that I used tag 9 instead of tag 18+19. After rereading the answer to my question, it seemed quite straightforward. Unfortunately, my implementation disagrees with me.

the result I get is PortablePGP/BouncyCastle complaining "unknown object in stream 15".

What am I doing wrong here? Is the error here in my thinking, or somewhere in my unposted code? I am fairly certain that my encrypt function is correct, since, as mentioned above, worked correctly, just not on packet type 18.