~
I had time to play with it for a little bit today, and had no major problems. Here's my adventure:
I started with Debian 13.4.0 since I already had the ISO downloaded and installed the KDE Plasma DTE on top of it.
Since you had an issue with
python3.13-venv I did a couple of searches to figure out if it was the latest version of
venv, and it turns out it is. This might be something you want to look into on Kubuntu. I don't remember why I specified v3.13, perhaps the Debian package manager delayed release at one point, and I had noticed it was necessary. I restored the instructions in the OP to
python3-venv because it's the same version now.

Creating the virtual environment and downloading the files with supplied commands went without a hitch.

I'm anal, so I never skip verification, even when testing on a VM I never plan to use.

Installation went smooth.

Here's the whole output:
root@debvb:~# /opt/electrum/bin/pip install --use-pep517 Electrum-4.7.2.tar.gz
Processing ./Electrum-4.7.2.tar.gz
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting qrcode (from Electrum==4.7.2)
Downloading qrcode-8.2-py3-none-any.whl.metadata (17 kB)
Collecting protobuf>=3.20 (from Electrum==4.7.2)
Downloading protobuf-7.34.1-cp310-abi3-manylinux2014_x86_64.whl.metadata (595 bytes)
Collecting qdarkstyle>=3.2 (from Electrum==4.7.2)
Downloading QDarkStyle-3.2.3-py2.py3-none-any.whl.metadata (3.2 kB)
Collecting aiorpcx<0.26,>=0.25.0 (from Electrum==4.7.2)
Downloading aiorpcX-0.25.0-py3-none-any.whl.metadata (2.2 kB)
Collecting aiohttp<4.0.0,>=3.11.0 (from Electrum==4.7.2)
Downloading aiohttp-3.13.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (8.1 kB)
Collecting aiohttp_socks>=0.9.2 (from Electrum==4.7.2)
Downloading aiohttp_socks-0.11.0-py3-none-any.whl.metadata (3.6 kB)
Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from Electrum==4.7.2) (2025.1.31)
Collecting jsonpatch (from Electrum==4.7.2)
Downloading jsonpatch-1.33-py2.py3-none-any.whl.metadata (3.0 kB)
Collecting electrum_ecc<0.1,>=0.0.4 (from Electrum==4.7.2)
Downloading electrum_ecc-0.0.7.tar.gz (2.2 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 5.9 MB/s eta 0:00:00
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting electrum_aionostr<0.2,>=0.1.0 (from Electrum==4.7.2)
Downloading electrum_aionostr-0.1.0.tar.gz (25 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting attrs<23,>=20.1.0 (from Electrum==4.7.2)
Downloading attrs-22.2.0-py3-none-any.whl.metadata (13 kB)
Collecting dnspython<2.5,>=2.2 (from Electrum==4.7.2)
Downloading dnspython-2.4.2-py3-none-any.whl.metadata (4.9 kB)
Collecting aiohappyeyeballs>=2.5.0 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl.metadata (5.9 kB)
Collecting aiosignal>=1.4.0 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading aiosignal-1.4.0-py3-none-any.whl.metadata (3.7 kB)
Collecting frozenlist>=1.1.1 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (20 kB)
Collecting multidict<7.0,>=4.5 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading multidict-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.3 kB)
Collecting propcache>=0.2.0 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (13 kB)
Collecting yarl<2.0,>=1.17.0 (from aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2)
Downloading yarl-1.23.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (79 kB)
Requirement already satisfied: idna>=2.0 in /usr/lib/python3/dist-packages (from yarl<2.0,>=1.17.0->aiohttp<4.0.0,>=3.11.0->Electrum==4.7.2) (3.10)
Collecting python-socks<3.0.0,>=2.4.3 (from python-socks[asyncio]<3.0.0,>=2.4.3->aiohttp_socks>=0.9.2->Electrum==4.7.2)
Downloading python_socks-2.8.1-py3-none-any.whl.metadata (8.2 kB)
Collecting qtpy>=2 (from qdarkstyle>=3.2->Electrum==4.7.2)
Downloading QtPy-2.4.3-py3-none-any.whl.metadata (12 kB)
Collecting packaging (from qtpy>=2->qdarkstyle>=3.2->Electrum==4.7.2)
Downloading packaging-26.2-py3-none-any.whl.metadata (3.5 kB)
Collecting jsonpointer>=1.9 (from jsonpatch->Electrum==4.7.2)
Downloading jsonpointer-3.1.1-py3-none-any.whl.metadata (2.4 kB)
Downloading aiohttp-3.13.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.8 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 5.1 MB/s eta 0:00:00
Downloading aiorpcX-0.25.0-py3-none-any.whl (39 kB)
Downloading attrs-22.2.0-py3-none-any.whl (60 kB)
Downloading dnspython-2.4.2-py3-none-any.whl (300 kB)
Downloading multidict-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (254 kB)
Downloading yarl-1.23.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (101 kB)
Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl (15 kB)
Downloading aiohttp_socks-0.11.0-py3-none-any.whl (10 kB)
Downloading python_socks-2.8.1-py3-none-any.whl (55 kB)
Downloading aiosignal-1.4.0-py3-none-any.whl (7.5 kB)
Downloading frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (234 kB)
Downloading propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (204 kB)
Downloading protobuf-7.34.1-cp310-abi3-manylinux2014_x86_64.whl (324 kB)
Downloading QDarkStyle-3.2.3-py2.py3-none-any.whl (871 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 871.8/871.8 kB 6.3 MB/s eta 0:00:00
Downloading QtPy-2.4.3-py3-none-any.whl (95 kB)
Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)
Downloading jsonpointer-3.1.1-py3-none-any.whl (7.7 kB)
Downloading packaging-26.2-py3-none-any.whl (100 kB)
Downloading qrcode-8.2-py3-none-any.whl (45 kB)
Building wheels for collected packages: Electrum, electrum_aionostr, electrum_ecc
Building wheel for Electrum (pyproject.toml) ... done
Created wheel for Electrum: filename=electrum-4.7.2-py3-none-any.whl size=7864762 sha256=0d4339756664a483dc1fa15a19208edf368b0522c110fc74d4a6dada284cde7e
Stored in directory: /root/.cache/pip/wheels/44/7f/64/ccc9c1eca0c7b536638d5508ef123e5c9441f78ee769028eda
Building wheel for electrum_aionostr (pyproject.toml) ... done
Created wheel for electrum_aionostr: filename=electrum_aionostr-0.1.0-py3-none-any.whl size=24937 sha256=d2a4ad9f6a4d82f6c8325380871e73411e3c52fd8d35a890cb3772ce40e2aeaa
Stored in directory: /root/.cache/pip/wheels/ed/d6/66/1fad1f790e74311f452a37f4118ed6162d0c770196e5e61536
Building wheel for electrum_ecc (pyproject.toml) ... done
Created wheel for electrum_ecc: filename=electrum_ecc-0.0.7-py3-none-linux_x86_64.whl size=1620948 sha256=4e8da1e3b7bcecc818f0478ab3bad5f0ee35815eed366ead51a714e629db6983
Stored in directory: /root/.cache/pip/wheels/16/e6/fe/b064dfea35b4dabfb7f8d5b3c67eea9636c1d3298b74203bb3
Successfully built Electrum electrum_aionostr electrum_ecc
Installing collected packages: qrcode, python-socks, protobuf, propcache, packaging, multidict, jsonpointer, frozenlist, electrum_ecc, dnspython, attrs, aiorpcx, aiohappyeyeballs, yarl, qtpy, jsonpatch, aiosignal, qdarkstyle, aiohttp, aiohttp_socks, electrum_aionostr, Electrum
Successfully installed Electrum-4.7.2 aiohappyeyeballs-2.6.1 aiohttp-3.13.5 aiohttp_socks-0.11.0 aiorpcx-0.25.0 aiosignal-1.4.0 attrs-22.2.0 dnspython-2.4.2 electrum_aionostr-0.1.0 electrum_ecc-0.0.7 frozenlist-1.8.0 jsonpatch-1.33 jsonpointer-3.1.1 multidict-6.7.1 packaging-26.2 propcache-0.4.1 protobuf-7.34.1 python-socks-2.8.1 qdarkstyle-3.2.3 qrcode-8.2 qtpy-2.4.3 yarl-1.23.0
root@debvb:~#
The only thing that didn't work was the
desktop-file-install command, so in the instructions I replaced it with a simple copy command.

The terminal command works fine, no errors.

The desktop icon is listed in the app drawer, and also works fine.

In summation, I'm still not sure why you're having issues. I can only assume it's something specific to Kubuntu and the version of Python virtual environment. There might be some difference in the version released through Kubuntu's package manager, and that could be the root of all your issues.