McCulloch finished off impressive build-up play from Dean Shiels in the 57th minute of a closer Glasgow derby than the vast majority of the 49,463 crowd would have anticipated and gave the score a somewhat flattering touch in injury-time.
The amateurs from several miles away in the south side of the city came into the Irn-Bru Third Division game as league leaders and matched their hosts in possession for long spells.
They came very close to equalising soon after McCulloch's opener when Andrew Robertson squandered a great chance and put Rangers under pressure in the final quarter.
But McCulloch ensured Rangers maintained their 100 per cent home record after their wait for an away win continued two weeks ago with defeat by bottom club Stirling.
That shock defeat prompted one change from Ally McCoist with Kyle Hutton replacing Anestis Argyriou in midfield.
Rangers went into the game in fourth place but Queen's Park struggled to get out of their own half in the opening stages and goalkeeper Neil Parry made comfortable saves from Shiels and McCulloch.
However, Queen's soon grew into the game and created a decent chance for centre-forward Jamie Longworth, who fired over from 16 yards.
The Spiders were passing the ball with confidence and they had the home support worried after Richard Little's diagonal ball found Robertson on the left wing, when his low cross just evaded Longworth.
The home support were getting restless as their team struggled to string passes together and Rangers goalkeeper Neil Alexander caught James Brough's header following David Anderson's free-kick.
Rangers were lacking leadership and someone to take a grip of the game in midfield but they rallied in the latter stages of the half.
Fraser Aird's inswinging corner bounced across the six yard box and Sebastien Faure's diving header hit the side netting.
They came closer when McCulloch laid off Aird's cross into the path of Shiels, who fired a left-footed drive towards the far corner, but Parry got down brilliantly to get a hand to keep it out.
Hutton and Ian Black were involved in a brief argument as the teams walked off at half-time and it was hard to imagine those being the last raised voices of the interval among the home team.
Queen's had the first chance of the second half when Longworth headed over Lawrence Shankland's corner.
McCulloch shot wide from 16 yards while Rangers survived a scare following Faure's short passback when Alexander caught Shankland's cross while well out of his goal.
Andy Little returned from a six-week lay-off with a foot injury in the 55th minute and soon had a sight of goal, but Brough threw himself in the way of his shot.
Rangers did not have to wait long for the opener though as Shiels got the ball on the left and cut in along the bye-line before squaring the ball for McCulloch to tap home into the unguarded net.
The hosts looked more comfortable on the ball in the immediate aftermath of the goal but quickly put themselves under pressure with some slack play inside their own half.
And Robertson missed a wonderful chance in the 62nd minute after carving the home defence open. The winger spun away from Black with a superb piece of skill and played successive one-twos, the second of which with Longworth put him clean through on goal.
The winger had all the time he needed with the ball on his left foot but delayed his shot, which allowed Alexander to narrow the angle sufficiently to block his shot from eight yards.
Lewis MacLeod twice shot just wide from long range and McCulloch fluffed a chance to go round Parry but the goal had not opened the floodgates and the visitors had Rangers pushed back for much of the final quarter.
However, they were unable to make the most of several set-pieces and McCulloch had another easy finish in injury-time with Parry grounded after substitute Barrie McKay's 30-yard effort bounced back off the bar.