So I worked this one out but posted it anyway because I couldn't find the question originally.
YES, it is intended behaviour. It's not at all an issue with Cobra, it's being converted before being passed as an argument.
In bash: echo $$
returns 2084.
Someone smarter than me might be able to give a more in-depth explanation but I suspect it has something to do with Shell Parameter Expansion