Generally you should stick to the same type of material or ones that are known to work together. PLA and PLA-CF are basically the same thing (for this discussion) so that one working isn't a surprise. Mix PLA and PETG through and you're going to have a bad time keeping it together. The opposite one is used for as the interface layer on supports for a reason.
For calibration you should have a profile for each material type for each brand. I stick to a couple brands that I know print well to keep that easy.
As for how to calibrate, that depends on the slicer you're using. I'm using Bambu Studio and it has a calibration tab with options to do the flow dynamics and rates. Basically it prints some test patterns and you tell it which is best from each one. It then generates the profile that you can in future prints when you're slicing a model.
As for calibrating when mixing types, I feel like there's a misunderstanding here. It's not something you do directly. You have a profile for Type A and a profile for Type B. Then say you set in you have 4mm cube for a model (keeping it simple here

) and set the bottom 2mm to Type A and the top 2mm to TypeB in the slicer. When you slice it, the slicer will create the gcode appropriately for each part. It'll cause the printer do something like print A at a max volumetric speed of 14 mm^3/s and then switch that to 16 mm^3/s when it starts printing B. There's no combined profile. It uses each individual one when appropriate.