I spent a long time looking into it and found out that only Cubase as a DAW can send the Program Change commands correctly to Halion. This is due to the latest VST3 specification from Steinberg, which has not yet been implemented correctly by other programmers. You have to have the specification, read it and possibly contact Steinberg.
Good to know, I'll pass that on to the developers.