While using a cubicial complex significantly reduces the number of simplices, the marching cube algorithm is more complex than the marching tetrahedra algorithm. Each tetrahedra in marching tetrahedra correspond to 8 cases. Upto rotation, marching cubes has 15 cases. It is unclear if these cases can be built with cubes.
Below is my attempt to handle each case. I do not think these pieces connect correctly without introducing holes.

Even if they did, we also need to ensure they connect correctly in 4D.
Potential Fix: Make each case a valid cubicial complex with no holes. When gluing two pieces together, remove any overlapping faces. However, this may introduce unwanted voids into the surface.
New Simpler Approach
We start with a 3D analog. Consider a cubicial complex of a 3D unit cube. Consider two parallel faces:
Define the 1-chain where
Right now, this instance gives the zero chain. Indeed, let . Then
However, if we add some holes this problem is avoided. That is, we add a hole going from the center of to the center of .
Lets now extend to 4D. A 4-dimensional cubicial complex with 6 vertices along each axis can be represented by an array of cells. As an example, below is a 2D example with 5 vertices along the - and -axis (image source):

The dimension of a cell is given by the number of even values (odd if starting from 0) in its coordinate. For instance, above would be the square (dimension 2) in the bottom-left corner. The boundary map follows a simple pattern. Consider a square in the above array; then the boundary is given by
Consider the faces (dimension 3) given by
which gives the 2-cycles
Define the input 2-cycle . Right now, this should be homologous to the zero-cycle. However, if cut a hole through our 4D cube (by removing the cells ) then the optimal cycle should be where
Remark: It would probably be simpler to just take as the input cycle.