In functional meaning they are identical, but the pronunciation is different. This is called lenition and happens in certain situations, for example here I think the word 'glè' makes every word after it lenite. Another example is that 'madainn mhath' (good morning) has lenition, but 'feasgar math' (good afternoon) does not. I don't fully understand when or why this happens in every case, but there is more information here: https://gaelicgrammar.org/~gaelic/mediawiki/index.php/Lenition
Regardless of lenition (which I don't fully understand), is bheag used here because a kitten is "feminine" - like madainn and oidhche are feminine so we madainn/oidhce mhath and faesgar is "masculine" so we say faesgar math? Or have I got this totally wrong in my head? Tapadh leibh.
Yes and no! In this particular case both glè and piseag lenite the word after them. So in here lenition is caused by the 'glè' (because it comes right before it), but you're correct in that even if the glè wasn't there, bheag would still be lenited because piseag is feminine and so also lenites.
You can see this on this page under the section 'Lenition on adjectives' https://gaelicgrammar.org/~gaelic/mediawiki/index.php/Lenition - piseag lenites because it is a feminine noun, and glè lenites because it is an intensifier
Yes and no. A kitten is small would just be tha piseag beag. A small kitten is nice would be tha piseag bheag snog. The adjective lenites only when it is directly applied to the noun (where you'd be translating it in English as putting it before the noun rather than saying X is Y) and of course the noun is feminine, and the adjective can lenite.
Balach isn't in this question. But a kitten and a boy would be piseag agus balach. Balach only goes to bhalaich when you are leniting and slenderising, mostly that happens on Duolingo when you are talking to the boy. A bheil piseag agad a bhalaich? Do you have a kitten boy?