The comment from @Briomkez is a correct start - when running the geth command, it is showing that you've connected to ChainID: 1 which is not correct - it's not your private network.
To start a private network, create your genesis file (I like to use puppeth).
Once you've created your genesis file, run geth init, importantly here - define a datadir
You can run miner.start() on your Geth node, if you enable this rpc module at geth's start.
geth --networkid=3 --rpc --rpcapi "eth,net,web3,admin,personal,miner,debug" --etherbase 0xe78150FaCD36E8EB00291e251424a0515AA1FF05
This "miner" module is not available in Parity as there is not embedded miner for it (unless you configure an external GPU ...
Double spending affects also ERC20 tokens (and any token types for that matter). It's all about being able to double-send transactions which have some value. I don't see basically much difference between Ether and token in this sense.
I'd imagine that the reason why double spending is always associated with Ethers and not tokens is that Ethers are a lot ...
Rinkeby is not supported by Parity because Rinkeby uses Clique consensus mechanism and Parity has not implemented this mechanism.
Kovan is not supported by Geth because Kovan uses Aura consensus mechanism (authority round) and Geth has not implemented this mechanism.
you can read more about this here.
Hope it will help.