Sorry I did not answer this earlier but I don't visit the forum much these days.
If I understand you right you measured 2 caps separately, then after you joined them together they measured different to the sum of the 2 values?
There could be a number of reasons for that. The most obvious thing is that with two caps in parallel they are still charged by the ONE 10k resistor, so now they are being charged and discharged with HALF the current used in the single cap tests. That gives you half the self heating (affects cap temp co), and might also cause issues with the cap internal ESR etc. Those physical issues might explain why the caps measured differently.
Another thing that has caught me out in the past when testing caps was after joining caps by soldering their short legs together they were quite warm and that easily changes their capacitance value by a couple of percent. Maybe that explains your data?
If you think the cap meter oscillator is not linear you can test this very easily by putting a decent frequency meter on the comparator output, and if the oscillator is linear then the displayed cap value will read half when the freq is doubled (or other ratio depending which 2 caps you use in the test). It passed that test well when I tested it.
To look at the linearity or the oscillator; the cap is charged and discharged between two voltage thresholds, and because the PIC has a regulated 5v supply these thresholds should remain the same even with different caps. The charge/discharge is through the PIC internal pin fets and the 10k resistor. Those resistances should remain the same with different caps. Then there is a fixed error from stray PCB capacitances and the small internal cap etc, but this remains the same and is zeroed out with the button. So ultimately the only thing that changes the osc freq after that is the capacitance (and internal resistances) of whatever cap you connect to the test probes. It is also affected slightly by small capacitances of your hands and the position of the test wires etc (a few pF), which can be noticeable when testing very small caps but usually doesn't matter. However you should still make sure your test leads are short and secured from movement.
Probably the main thing to remember is that this is a cheap simple high RESOLUTION cap meter, not a high accuracy meter. The high resolution is great for comparing caps, or seeing capacitance change as you heat a cap, or seeing small cap values or changes from moving wiring etc. After an initial calibration by tweaking the 10k resistor it should measure caps better than 1%, and might even be better than 1% straight out of the box (that depends how closely your PIC internals match my PIC). Caps are normally 10% tolerance or worse, so that is plenty of accuracy.
With most caps the temperature coeficient is so high that they will change 1% or more in cap value even with finger heat or ambient temperature changes, or self heating when used in an oscillator. If you wanted to make a very high accuracy cap meter you need to use carefully controlled fixed current for charge and discharge and keep the cap in a fixed temperature container (to negate ambient temp changes and self heating issues). That is well out of the scope of a capacitance meter using one PIC and four resistors...
Regarding the math I used in the software it is very accurate. The osc freq (period) is measured by summing a great number of contiguous periods until the total sample is in the millions so the native resolution of each measurement is very high (less than 1 part per million error). Then the math routines scale the data before and during the calcs so it JUST fits in 32 bit variables, so any errors there are very small in the order of 1 part per billion or so. (That gives much better ratio accuracy than if I had used 32 bit float math.)