PotionEffect is not fully implemented. This is in regards to "ShowParticles" , looking at the source, your constructor takes the Boolean for particles, but apart from assigning it to a field, it never gets used. The outcome of this is that you can't hide the particles from any Potion or Potion effect.
I have tested this in every possible combination, but I won't list any of them unless you require it. If you just look at the PotionEffect source it will be very clear that I am talking about. Once its fully implemented I will then re run all the tests, but there isn't much point until PotionEffect is fixed.
PS- Obviously this has a effect on PotionMeta and serialization but the one fix should hopefully fix it all.
Please let me know if you require any more info.
Regards.