I was messing around with the CFrames for my ViewModels and found that the aim CFrame effected the normal CFrame. For instance, if I included in my aim CFrame that Y Axis was 1.45, the main CFrame Y Axis would be moved as well.

Framework script (localscript):

--wait until game is loaded
repeat wait() until game:IsLoaded()

--local variables
local plr = game.Players.LocalPlayer
local char = plr.Character
local cam = workspace.CurrentCamera
local mouse = plr:GetMouse()

--service variables
local runs = game:GetService("RunService")
local tweens = game:GetService("TweenService")
local uis = game:GetService("UserInputService")
local rs = game:GetService("ReplicatedStorage")

--misc variables
local modules = rs:WaitForChild("Modules")
local models = rs:WaitForChild("Models")
local running
local aiming

--CFrame variables

local maincf = CFrame.new()
local aimcf = CFrame.new()

--gun variables

local currentEquipt
local primary = "test"
local secondary
local currentData

--functions

plr.CameraMode = Enum.CameraMode.LockFirstPerson

function setup(gun)
	currentEquipt = models:WaitForChild(gun)
	currentEquipt.PrimaryPart = currentEquipt:WaitForChild("Handle")
	currentEquipt.Parent = cam
	
	currentData = require(modules:FindFirstChild(gun))
	
	maincf = currentData.maincf
	aimcf = currentData.aimcf
	
	for _,v in pairs(currentEquipt:GetChildren())do
		if v:IsA("BasePart") or v:IsA("MeshPart") or v:IsA("UnionOperation") then
			if v.Anchored and not v.CanCollide then
			else
				v.Anchored = true
				v.CanCollide = false
				print("Fixed "..v.name..".")
			end
			
			if v:FindFirstChild("Weld") then
				v.Weld:Destroy()
			end
		end
	end
end

runs.RenderStepped:Connect(function()
	if currentEquipt then
		currentEquipt:SetPrimaryPartCFrame(cam.CFrame
			*maincf
			*aimcf
		)
	end
end)

mouse.Button2Down:Connect(function()
	aiming = true
end)

mouse.Button2Up:Connect(function()
	aiming = false
end)

setup(primary)

Module:

local test = {}
test.maincf = CFrame.new(0.67,-.45,-2.55)
test.aimcf = CFrame.new(0,-.56,0)
return test

Please try and help, I'll be answering questions if you have any.