I'm trying to use ode45 to predict the behavior of the following system:

I'm getting the following error with my Force matrix F:

Since the forcing function changes with time, I made it a function handle of @(t). However, ODE45 doesn't like the function handle when I try putting it into a cell matrix represented by F = {f;0}. I'm not sure if MATLAB doesn't like the fact that I am mixing cell matrices with regular matrices or that I am mixing function handles with doubles. Is there any workaround to this?
Here is my code:
clear all
close all
clc
% __Variables:__
m1 = 1000; % [kg]
m2 = 50; % [kg]
k1 = 1000; % [N/m]
k2 = (1/3)*k1; % [N/m]
k3 = (2/3)*k1; % [N/m]
c1 = 30; % [Ns/m]
c2 = 10; % [Ns/m]
c3 = 10; % [Ns/m]
alpha = 0.3;
beta = 0.5;
syms x1 x2 t
% Initial Conditions
tspan = [0 300]; % [s]
x1_0 = 0;
x2_0 = 0;
x1_0_dot = 0;
x2_0_dot = 0;
f_0 = 100; % [N]
% __Matrices:__
X_0 = [x1_0; % Initial conditions vector
x2_0;
x1_0_dot;
x2_0_dot];
f = @(t)f_0*sin(alpha*t)*cos(beta*t);
K = [(k1*c1+k2*c2)*(x1^2)+k1+k2 -k2*c2*(x1^2)-k2; -k2*c2*(x2^2)-k2 (k2*c2+k3*c3)*(x2^2)+k2+k3]; % Stiffness Matrix
C = [c1+c2 0; 0 c2+c3]; % Damping Matrix
M = [m1 0; m2 0]; % Mass Matrix
F = {f;0}; % Force Matrix
% Solving with ODE45
fun = @(t,X)odefun(t,X,K,C,M,F); % Defines the ODE function and it's input matrices
[t,X] = ode45(fun,tspan,X_0); % Calls the ODE45 function (see end of code), sets the time and initial conditions. Outputs time and displacements. Output is [t,x]
function output = odefun(t,X,K,C,M,F) % odefun, with input matrices
X_variable = X(1:2) % position
X_variable_dot = X(3:4) % 1st derivitive
X_variable_dot_dot = M\(F-K*X_variable-C*X_variable_dot) % 2nd derivitive, from the equation of motion
output=[X_variable_dot;X_variable_dot_dot]; % places results as a column vector
end