I made a second level for Scone MacBunny's store-bought cage many years ago (Natasha Rabbitova uses it now). It wasn't at all hard.
I used wire shelving I bought at Home Depot for the second level - it was about 16" deep with an "L" shaped piece on one side. I took off the old top, cut the shelving to fit on top of the old walls, zip-tied it in place with the "L" part of the shelf at the bottom facing inward, then zip-tied the old top on top of the new extended walls. A piece of old table leaf, cut to size (leaving about 9" free space on one end so the bunny has access) and covered with a terry-cloth towel stapled underneath, made a perfect floor - it sits on the L-shaped parts of the shelving. A wood box on the floor of the cage provides a step for the bunny to jump from one level to the other.
Actually, I made the second level slightly longer than the original cage, so it overhangs on one end. The original cage was Italian (Macchioro), which meant it was 1.5 meters in length. The shelving was in US measurements, so it worked out well to make the upper level four feet long. The overhang's all on one side, which looks a bit odd I admit, but it fit where the cage lives.
This is what the second level looks like (with Natasha):
The overall cage arrangement (with Scone):
For scale, both Natasha and Scone are about the same size, 5 pound mini-Rexes.