I have assigned both pc a new IP address 192.168.15.x and put a switch between them.
I'm assuming that the windows host you mentioned is a third machine, and is on the local network (192.168.100.xxx).
To reach host B, it has to go through host A. So host A has to have ip forwarding enabled. Also, the windows host will need to have a route defined so that it uses the private address of Host A as the gateway for any 192.168.15.xxx address. Otherwise it will send traffic to the default gateway which won't see the 192.168.15.xxx network. Another thing is that for ssh, you need to use agent forwarding such as ssh-agent or gpg-agent, or use the -A option for ssh. I don't know if your windows ssh program supports that.
An alternative is to have both A & B connected to the local network instead of a connection between the two.
Then host A will need just the one interface.