A room doesnt generates as it should

I finally started making the game today because i finished lobby.Everything was perfect,but when i added 2 more cool rooms,1 of them are not generating in the position as it should.the room generates in weird positions.

Server:

local RoomsModule = require(script.RoomsModule)
local LastDoor = workspace.StartingRoom

task.wait(1)

game:GetService("ReplicatedStorage").Door.Event:Connect(function(DoorCount)
	LastDoor = RoomsModule.Generate(LastDoor)
	LastDoor.Build.Label.SurfaceGui.DoorCount.Text = "A-"..DoorCount + 1
	if #workspace.GeneratedRooms:GetChildren() > 5 then
		workspace.GeneratedRooms:GetChildren()[1]:Destroy()
	end
end)

And the module:

local Rooms = {}

function Rooms.Generate(LastDoor)
	local PossibleRooms = game:GetService("ServerStorage").Rooms:GetChildren()
	local SelectedRoom = PossibleRooms[math.random(#PossibleRooms)]
	local NewRoom = SelectedRoom:Clone()
	
	NewRoom.PrimaryPart = NewRoom.Entrance
	NewRoom:SetPrimaryPartCFrame(LastDoor.Exit.CFrame)
	NewRoom.Parent = workspace.GeneratedRooms
	
	return NewRoom
end

return Rooms

Server is in the SSS (Srvrscrptsrvice) and module in the serv. script
also the issue in video:

I also encountered this problem once. In my case, the solution was to change orientation of the PrimaryPart (The part at the beginning of the room or the part at the end of previous room). Maybe this will be a solution for you too, but I doubt it because CFrame = Position + Orientation.